---
Fuzzer filename: "JtsFuzzer"
Fuzzing method: "fuzzerTestOneInput"
All functions:
  Function list name: "All functions"
  Elements:
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:58,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    - "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    - "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:86,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:93,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:97,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:100,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:103,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:106,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:110,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:126,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:131,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:134,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:137,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].size()"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:158,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:160,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:162,1"
      Dst: "[java.util.Set].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:164,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:311,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:52"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.GeometryCollection:54,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.Point:60,1"
      Dst: "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:68"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "getFactory()"
      - BranchSide: "org.locationtech.jts.geom.Point:67"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.Point:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:68"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.Point:67"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Point:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.Point:66,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.Point:68,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:68,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    functionSourceFile: "org.locationtech.jts.util.AssertionFailedException"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.AssertionFailedException:26,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.AssertionFailedException"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.AssertionFailedException:36,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.LineString].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:78,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.LineString:79,1"
      Dst: "[org.locationtech.jts.geom.LineString].init(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateSequence].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: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:87"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "getFactory()"
      - BranchSide: "org.locationtech.jts.geom.LineString:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineString:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:91"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.LineString:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineString:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:91"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.LineString:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.LineString:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.LineString:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.LineString:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.LineString:88,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.LineString:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LineString:89,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.LineString:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.LineString:89,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jts.algorithm.ConvexHull].padArray3(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:205,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:215,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:217,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:226,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:230,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:234,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].padArray3(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralPts(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:335,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralPts(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:337,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:340,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:343,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:344,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralPts(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 112
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:364"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:363"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:364"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:366"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:369"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:372"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:378"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:359"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:110"
        BranchSideFuncs:
        - "locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:111,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:130,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:70"
        BranchSideFuncs:
        - "countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "isOnSegment()"
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:69"
        BranchSideFuncs:
        - "getLocation()"
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:60"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:61,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:66,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:67,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:68,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 98
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:160"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:161,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 25
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithmsDD"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(double,double,double,double,double,double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:41,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(double,double,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithmsDD"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 3
    returnType: "int"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndexFilter(double,double,double,double,double,double)"
    - "[org.locationtech.jts.math.DD].selfAdd(double)"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].signum()"
    functionUses: 5
    ICount: 26
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:68"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "selfSubtract(org.locationtech.jts.math.DD)"
        - "selfAdd(double)"
        - "valueOf(double)"
        - "signum()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:65,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndexFilter(double,double,double,double,double,double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:69,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:69,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:75,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:75,1"
      Dst: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:75,1"
      Dst: "[org.locationtech.jts.math.DD].signum()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndexFilter(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithmsDD"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "int"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].signum(double)"
    functionUses: 1
    ICount: 47
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:171"
        BranchSideFuncs:
        - "signum(double)"
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:170"
        BranchSideFuncs:
        - "signum(double)"
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:174"
        BranchSideFuncs:
        - "signum(double)"
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:151,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].signum(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].signum(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithmsDD"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:180"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:189,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:190,1"
      Dst: "[org.locationtech.jts.math.DD].init(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 254
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 358
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 490
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:491,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 510
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 425
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 7
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:427"
        BranchSideFuncs:
        - "selfAdd(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:426"
        BranchSideFuncs:
        - "selfAdd(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:426,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:427,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 374
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].signum()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 679
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:680"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:681"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:680"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:681"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:682"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:681"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:682"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:683"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:682"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:683"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:684"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:683"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 194
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:216"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].padArray3(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:246"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:245"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:142,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Arrays].sort(java.lang.Object[],int,int,java.util.Comparator)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:274,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:274,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],int,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:460,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Stack"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.Stack].pop()"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].peek()"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:287,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:288,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:293,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:296,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:297,1"
      Dst: "[java.util.Stack].peek()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:297,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Stack"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].get(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:172,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:174,1"
      Dst: "[java.util.Vector].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].cleanRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:403"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:402"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:399,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].cleanRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:401,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:403,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:404,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].cleanRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.ConvexHull].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:430"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:423"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:424"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:428"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:427"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:428"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:427"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:415,1"
      Dst: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:416,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:421,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:425,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:428,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:432,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:433,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:60,1"
      Dst: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.NegateFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ElementFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.LineSegment].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].equals(java.lang.Object)"
    - "[org.jdom2.filter.OrFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ClassFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.jdom2.filter.AndFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Edge].equals(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.tri.TriEdge].equals(java.lang.Object)"
    - "[org.jdom2.filter.AttributeFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].equals(java.lang.Object)"
    - "[org.jdom2.Namespace].equals(java.lang.Object)"
    - "[org.jdom2.Content:org.jdom2.Document:org.jdom2.filter.ContentFilter:org.jdom2.filter.TextOnlyFilter:org.locationtech.jts.geom.PrecisionModel:org.locationtech.jts.geom.util.AffineTransformation:org.locationtech.jts.index.strtree.Interval:org.locationtech.jts.math.Vector2D:org.locationtech.jts.math.Vector3D:org.locationtech.jts.operation.overlayng.EdgeKey].equals(java.lang.Object)"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.Object].equals(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()"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:78"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.util.Assert:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:74"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:74,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Assert:75,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Assert:76,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:76,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:312,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:85,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.LinearRing:86,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LinearRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LinearRing:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LinearRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LinearRing:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LinearRing:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:97"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.LinearRing:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LinearRing:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:97"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.LinearRing:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:90,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LinearRing:90,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.geom.LinearRing:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LinearRing:93,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.LinearRing:93,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.LinearRing:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.LinearRing:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LinearRing:95,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.LinearRing:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[org.locationtech.jts.geom.Geometry].hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:118"
        BranchSideFuncs:
        - "getFactory()"
        - "createLinearRing()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:120"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.Polygon:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:123"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    - Branch String: "org.locationtech.jts.geom.Polygon:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.Polygon:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Polygon:116,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    - Src: "org.locationtech.jts.geom.Polygon:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.Polygon:122,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Polygon:124,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.Polygon:124,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:355,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:126,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:131,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:134,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:137,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:142,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].size()"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:158,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:160,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:162,1"
      Dst: "[java.util.Set].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:164,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Stack"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].get(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:172,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:174,1"
      Dst: "[java.util.Vector].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jts.algorithm.ConvexHull].padArray3(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:205,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:215,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:217,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:226,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:230,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:234,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].padArray3(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].padArray3(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:246"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:245"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Arrays].sort(java.lang.Object[],int,int,java.util.Comparator)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:274,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:274,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],int,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.Stack"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.Stack].pop()"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].peek()"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:287,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:288,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:293,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:296,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:297,1"
      Dst: "[java.util.Stack].peek()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:297,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:312,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralPts(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:335,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralPts(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:337,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:340,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:343,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:344,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].computeInnerOctolateralPts(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 112
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:364"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:363"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:364"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:366"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:369"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:372"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:378"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:359"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 23
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].cleanRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:403"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:402"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:399,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].cleanRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:401,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:403,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:404,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].cleanRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.ConvexHull].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:430"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:423"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:424"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:428"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:427"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:428"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:427"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:415,1"
      Dst: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:416,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:421,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:425,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:428,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:432,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:433,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions"
    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: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:19,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions].intersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:20,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    - "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:160,1"
      Dst: "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:141,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:146,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:148,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:161,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:161,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.GeometryGraphOperation"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:38,1"
      Dst: "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.GeometryGraphOperation"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.operation.GeometryGraphOperation].setComputationPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 28
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.GeometryGraphOperation:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.GeometryGraphOperation:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.GeometryGraphOperation:49"
        BranchSideFuncs:
        - "setComputationPrecision(org.locationtech.jts.geom.PrecisionModel)"
        - "getPrecisionModel()"
    Callsites:
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:28,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:47,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:48,1"
      Dst: "[org.locationtech.jts.operation.GeometryGraphOperation].setComputationPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:53,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 503
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - "[java.lang.Integer].compare(int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:506,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:508,1"
      Dst: "[java.lang.Integer].compare(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].ceil(double)"
    functionUses: 2
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:258"
        BranchSideFuncs:
        - "getScale()"
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].ceil(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.GeometryGraphOperation].setComputationPrecision(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.GeometryGraphOperation"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:69,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].<init>()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].add(org.locationtech.jts.geom.Geometry)"
    - "[java.util.HashMap].<init>()"
    functionUses: 2
    ICount: 22
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:135,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:96,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:112,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:142,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:73,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:65,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:74,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:74,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeFactory"
    linkageType: null
    functionLinenumber: 19
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeFactory:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.NodeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:33,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 49
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:209"
        BranchSideFuncs:
        - "addPolygon(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:211"
        BranchSideFuncs:
        - "addLineString(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:213"
        BranchSideFuncs:
        - "addPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:212"
        BranchSideFuncs:
        - "addPoint(org.locationtech.jts.geom.Point)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:217"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:216"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:203,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:210,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:212,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:213,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:214,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:218,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:218,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:218,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 20
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].addPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 275
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addPolygonRing(org.locationtech.jts.geom.LinearRing,int,int)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:276,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:275,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addPolygonRing(org.locationtech.jts.geom.LinearRing,int,int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:280,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:281,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].addPolygonRing(org.locationtech.jts.geom.LinearRing,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 247
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int,int,int)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].insertEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 33
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:249"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:257"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:263"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
        - "insertEdge(org.locationtech.jts.geomgraph.Edge)"
        - "<init>(int,int,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:248,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:250,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:250,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:260,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:264,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:264,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:266,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:268,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].insertEdge(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:270,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 7
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:406"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:405"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:405,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:406,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:407,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 378
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:384"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:380,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateList:62,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:63,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(int,int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int,int,int)"
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocations(int,int,int)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 26
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:103,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.Label:105,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocations(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:59,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:80,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocations(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].<init>(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Depth].<init>()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    functionUses: 5
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:56,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:48,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].<init>(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.Edge:52,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:32,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Depth].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:34"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Depth:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].insertEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:90,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 389
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:396"
        BranchSideFuncs:
        - "<init>(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:395"
        BranchSideFuncs:
        - "setLocation(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:390,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:391,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:393,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:396,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 6
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.NodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.relate.RelateNodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:61"
        BranchSideFuncs:
        - "createNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:56,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:58,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:59,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.NodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeFactory"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 5
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.EdgeEndStar)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeFactory:28,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.EdgeEndStar)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.EdgeEndStar)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geomgraph.EdgeEndStar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:32,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Node:35,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:74,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:75,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    - Src: "org.locationtech.jts.geomgraph.Label:77,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:65,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:66,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:142,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:132,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].addLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 294
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].insertEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 33
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:304"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "isTrue(boolean,java.lang.String)"
        - "insertEdge(org.locationtech.jts.geomgraph.Edge)"
        - "<init>(int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:305"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:304"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "isTrue(boolean,java.lang.String)"
        - "insertEdge(org.locationtech.jts.geomgraph.Edge)"
        - "<init>(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:295,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:295,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:305,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:305,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:306,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:307,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].insertEdge(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:313,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:314,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 405
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].determineBoundary(org.locationtech.jts.algorithm.BoundaryNodeRule,int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:416"
        BranchSideFuncs:
        - "determineBoundary(org.locationtech.jts.algorithm.BoundaryNodeRule,int)"
        - "setLocation(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:406,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:408,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:413,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:417,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].determineBoundary(org.locationtech.jts.algorithm.BoundaryNodeRule,int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:418,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 22
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:124,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].determineBoundary(org.locationtech.jts.algorithm.BoundaryNodeRule,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:85"
        BranchSideFuncs:
        - "isInBoundary(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:84"
        BranchSideFuncs:
        - "isInBoundary(int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:85,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].addPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:233,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:234,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionUses: 4
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:223,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:224,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:224,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:38,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayNodeFactory"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayNodeFactory:29,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.NodeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:65,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:70,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeOverlay(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:181,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeOverlay(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeOverlay(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].copyPoints(int)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeSplitEdges(java.util.List)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdges(java.util.List)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelsFromDepths()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].replaceCollapsedEdges()"
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid(java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelling()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNodes()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].findResultAreaEdges(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].cancelDuplicateResultEdges()"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(org.locationtech.jts.geomgraph.PlanarGraph)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].build(int)"
    - "[org.locationtech.jts.operation.overlay.PointBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - "[org.locationtech.jts.operation.overlay.PointBuilder].build(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeGeometry(java.util.List,java.util.List,java.util.List,int)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 65
    EdgeCount: 26
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:197,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].copyPoints(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:201,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:205,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:207,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:208,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSplitEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:212,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:214,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelsFromDepths()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:215,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].replaceCollapsedEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:229,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:229,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:231,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:232,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelling()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:234,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:244,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].findResultAreaEdges(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:245,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].cancelDuplicateResultEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:247,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:248,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(org.locationtech.jts.geomgraph.PlanarGraph)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:249,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:251,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:252,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].build(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:254,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:255,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].build(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:258,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeGeometry(java.util.List,java.util.List,java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].copyPoints(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 412
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 17
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:418"
        BranchSideFuncs:
        - "addNode(org.locationtech.jts.geom.Coordinate)"
        - "getLabel()"
        - "next()"
        - "getCoordinate()"
        - "getLocation(int)"
        - "setLabel(int,int)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:413,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:413,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:414,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:415,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:415,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:416,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:416,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:416,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:98,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].addNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 7
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:101,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:125,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:107"
        BranchSideFuncs:
        - "<init>(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Node:106"
        BranchSideFuncs:
        - "setLocation(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:104,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Node:107,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 10
    returnType: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.index.SimpleEdgeSetIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNodes(int)"
    - "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    functionUses: 4
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:354"
        BranchSideFuncs:
        - "createEdgeSetIntersector()"
        - "<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:354"
        BranchSideFuncs:
        - "createEdgeSetIntersector()"
        - "<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:354"
        BranchSideFuncs:
        - "createEdgeSetIntersector()"
        - "<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:361"
        BranchSideFuncs:
        - "computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
        - "addSelfIntersectionNodes(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:360"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:361"
        BranchSideFuncs:
        - "computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
        - "addSelfIntersectionNodes(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:360"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:355,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:356,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:362,1"
      Dst: "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:365,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNodes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:60,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "org.locationtech.jts.geomgraph.index.EdgeSetIntersector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:125,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:46,1"
      Dst: "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNodes(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNode(int,org.locationtech.jts.geom.Coordinate,int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 71
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:431"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getLabel()"
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:430"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:430"
        BranchSideFuncs:
        - "addSelfIntersectionNode(int,org.locationtech.jts.geom.Coordinate,int)"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:423,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:423,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:424,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:425,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:425,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:426,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:428,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNode(int,org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNode(int,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].isBoundaryNode(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:442"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:445"
        BranchSideFuncs:
        - "insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:444"
        BranchSideFuncs:
        - "insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:445"
        BranchSideFuncs:
        - "insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:444"
        BranchSideFuncs:
        - "insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:441,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].isBoundaryNode(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:443,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].insertBoundaryPoint(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:445,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].insertPoint(int,org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].isBoundaryNode(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:84"
        BranchSideFuncs:
        - "getLabel()"
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:83"
        BranchSideFuncs:
        - "getLabel()"
        - "getLocation(int)"
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:82,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:84,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:85,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:94,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 373
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geomgraph.GeometryGraph"
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodes()"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].setBoundaryNodes(java.util.Collection,java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - "[org.locationtech.jts.geomgraph.index.SimpleEdgeSetIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 2
    ICount: 14
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:374,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:375,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodes()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:375,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].setBoundaryNodes(java.util.Collection,java.util.Collection)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:377,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:378,1"
      Dst: "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodes()"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 3
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].getBoundaryNodes(int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:174"
        BranchSideFuncs:
        - "getBoundaryNodes(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:173,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].getBoundaryNodes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].getBoundaryNodes(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:113"
        BranchSideFuncs:
        - "getLabel()"
        - "next()"
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:107,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:108,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:108,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:110,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:110,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:111,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].setBoundaryNodes(java.util.Collection,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSplitEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addSplitEdges(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 12
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:200"
        BranchSideFuncs:
        - "next()"
        - "addSplitEdges(java.util.List)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:196,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:196,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:198,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addSplitEdges(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addSplitEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].createSplitEdge(org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:117"
        BranchSideFuncs:
        - "createSplitEdge(org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:105,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:107,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:110,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:112,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].createSplitEdge(org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:113,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:90,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 3
    returnType: "org.locationtech.jts.geomgraph.EdgeIntersection"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersection].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:52,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersection].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:53,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:57,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersection].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersection"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:49,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].createSplitEdge(org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    functionUses: 1
    ICount: 55
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:137"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:145"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:144"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:140,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:145,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:145,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 18
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:114,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.TopologyLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 18
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:70,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:267"
        BranchSideFuncs:
        - "insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:265,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].flip()"
    - "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - "[org.locationtech.jts.geomgraph.Depth].add(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    functionUses: 1
    ICount: 24
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:309"
        BranchSideFuncs:
        - "isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:308"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geomgraph.Edge)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:292"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "flip()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:291"
        BranchSideFuncs:
        - "isNull()"
        - "getDepth()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:298"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "add(org.locationtech.jts.geomgraph.Label)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:279,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:283,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:288,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:289,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:290,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].flip()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:292,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:295,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:296,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].add(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:300,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:309,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:73,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:73,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:75,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.OrientedCoordinateArray"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].orientation(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:39,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].orientation(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.OrientedCoordinateArray].orientation(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.OrientedCoordinateArray"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:50"
        BranchSideFuncs:
        - "increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:258"
        BranchSideFuncs:
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:253,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:270"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:266,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Label].flip()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:120,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:116"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Depth"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Depth].isNull()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.Depth].add(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - "[org.locationtech.jts.geomgraph.Depth].depthAtLocation(int)"
    functionUses: 2
    ICount: 27
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:100"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:87"
        BranchSideFuncs:
        - "getLocation(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:91"
        BranchSideFuncs:
        - "isNull(int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.Depth:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:95"
        BranchSideFuncs:
        - "depthAtLocation(int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Depth:89,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Depth:92,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Depth:93,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].depthAtLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:82"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Depth].depthAtLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - "[org.locationtech.jts.geomgraph.TopologyLocation].merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    functionUses: 4
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Label:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Label:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:160"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
      - BranchSide: "org.locationtech.jts.geomgraph.Label:159"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    - Branch String: "org.locationtech.jts.geomgraph.Label:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:160"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
      - BranchSide: "org.locationtech.jts.geomgraph.Label:159"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:157,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - Src: "org.locationtech.jts.geomgraph.Label:160,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 166
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.TopologyLocation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:173"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:51,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:51,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:52,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelsFromDepths()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - "[org.locationtech.jts.geomgraph.Depth].normalize()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    - "[org.locationtech.jts.geomgraph.Depth].getDelta(int)"
    - "[org.locationtech.jts.geomgraph.Label].toLine(int)"
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.geomgraph.Depth].getLocation(int,int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 44
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:384"
        BranchSideFuncs:
        - "next()"
        - "getLabel()"
        - "isNull()"
        - "getDepth()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:355"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:383"
        BranchSideFuncs:
        - "normalize()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:383"
        BranchSideFuncs:
        - "isNull(int)"
        - "isArea()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:355"
        BranchSideFuncs:
        - "normalize()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:355"
        BranchSideFuncs:
        - "normalize()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:355"
        BranchSideFuncs:
        - "normalize()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:375"
        BranchSideFuncs:
        - "toLine(int)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:375"
        BranchSideFuncs:
        - "isNull(int,int)"
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:375"
        BranchSideFuncs:
        - "getLocation(int,int)"
        - "isNull(int,int)"
        - "setLocation(int,int,int)"
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:374"
        BranchSideFuncs:
        - "isNull(int,int)"
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:346,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:346,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:347,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:348,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:349,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:355,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:356,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].normalize()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:358,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:358,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:358,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:365,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].getDelta(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:366,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].toLine(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:375,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:375,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:376,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:376,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:79,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Depth].normalize()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    functionUses: 1
    ICount: 33
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:130"
        BranchSideFuncs:
        - "isNull(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Depth:116,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:171,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:91"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Label].isArea()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:173"
        BranchSideFuncs:
        - "isArea()"
    - Branch String: "org.locationtech.jts.geomgraph.Label:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:173"
        BranchSideFuncs:
        - "isArea()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:174,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Depth].getDelta(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].toLine(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:204"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Label:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:202,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    - Src: "org.locationtech.jts.geomgraph.Label:203,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Depth].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:54"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionUses: 7
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:128,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].replaceCollapsedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 390
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Edge].isCollapsed()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].remove()"
    - "[org.jdom2.ContentList$CLIterator].remove()"
    - "[org.jdom2.AttributeList$ALIterator].remove()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].remove()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].remove()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].remove()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].remove()"
    - "[org.jdom2.FilterIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].remove()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].remove()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].remove()"
    - "[org.jdom2.ContentList$FilterListIterator].remove()"
    - "[org.jdom2.DescendantIterator].remove()"
    - "[org.jdom2.ContentList$CLListIterator].remove()"
    - "[org.locationtech.jts.geomgraph.Edge].getCollapsedEdge()"
    - "[org.locationtech.jts.geomgraph.EdgeList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].remove()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:400"
        BranchSideFuncs:
        - "isCollapsed()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:399"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:391,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:392,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:392,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:393,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:394,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isCollapsed()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:396,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:397,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCollapsedEdge()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:397,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:400,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isCollapsed()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:124"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:123"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geomgraph.Edge:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:122,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.geomgraph.Edge:124,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCollapsedEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 5
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].toLineLabel(org.locationtech.jts.geomgraph.Label)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:132,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].toLineLabel(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.geomgraph.Edge:132,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].toLineLabel(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.Label"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].<init>(int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:46,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int)"
    - Src: "org.locationtech.jts.geomgraph.Label:48,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.Label:48,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:63,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].addAll(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:60"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.Edge)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:57,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:58,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:58,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "java.util.List"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:44,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:45,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].toSegmentStrings(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:68,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].toSegmentStrings(java.util.Collection)"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:68,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].toSegmentStrings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeNodingValidator:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeNodingValidator:56"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeNodingValidator:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:52,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:52,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:53,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:54,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:54,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:54,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:80,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.FastNodingValidator].getErrorMessage()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersection()"
    functionUses: 3
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.FastNodingValidator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:140"
        BranchSideFuncs:
        - "getIntersection()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
        - "getErrorMessage()"
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:137,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].getErrorMessage()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersection()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].checkInteriorIntersections()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.FastNodingValidator:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:145"
        BranchSideFuncs:
        - "checkInteriorIntersections()"
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:146,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkInteriorIntersections()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].checkInteriorIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].hasIntersection()"
    functionUses: 1
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.FastNodingValidator:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:157,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:158,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:159,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:160,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:161,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:162,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].hasIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:124,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:91,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:69,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:75,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].init()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].setToNull()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:174,1"
      Dst: "[org.locationtech.jts.geom.Envelope].setToNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].setToNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 253
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].setId(int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 21
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:126"
        BranchSideFuncs:
        - "setId(int)"
        - "add(java.lang.Object)"
        - "insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
        - "next()"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:118,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:118,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:119,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:119,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:121,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].setId(int)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:123,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:123,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainBuilder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:55"
        BranchSideFuncs:
        - "findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:57,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainBuilder"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 41
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:80,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:88,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    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()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].setId(int)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 103
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:159"
        BranchSideFuncs:
        - "expandBy(double)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:155,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:199"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 418
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].setToNull()"
    functionUses: 1
    ICount: 30
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:420"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:428"
        BranchSideFuncs:
        - "setToNull()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:427"
        BranchSideFuncs:
        - "setToNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:429"
        BranchSideFuncs:
        - "setToNull()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:428"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:419,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:428,1"
      Dst: "[org.locationtech.jts.geom.Envelope].setToNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getId()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector:org.locationtech.jts.noding.InteriorIntersectionFinderAdder:org.locationtech.jts.noding.IntersectionAdder:org.locationtech.jts.noding.IntersectionFinderAdder:org.locationtech.jts.noding.NodingIntersectionFinder:org.locationtech.jts.noding.SegmentIntersectionDetector:org.locationtech.jts.noding.snap.SnappingIntersectionAdder:org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    functionUses: 1
    ICount: 34
    EdgeCount: 65
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:114"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:113"
        BranchSideFuncs:
        - "getId()"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:110"
        BranchSideFuncs:
        - "computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:109"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:93,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:95,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:95,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:96,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:97,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:98,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:105,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getId()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:106,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:110,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction:134,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:22,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:24,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getId()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 120
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "double"
    - "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:286,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "int"
    - "double"
    - "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionUses: 5
    ICount: 32
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:316"
        BranchSideFuncs:
        - "overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:315"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:316"
        BranchSideFuncs:
        - "overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:315"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:331"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:330"
        BranchSideFuncs:
        - "computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:329"
        BranchSideFuncs:
        - "computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:312,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:316,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:325,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 16
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:35,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:37,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 355
    functionDepth: 1
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 30
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:359"
        BranchSideFuncs:
        - "overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:358"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:357,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:359,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 363
    functionDepth: 0
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:371"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:370"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:371"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:373"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:381"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:364,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:365,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 5
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:76,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.geom.Envelope:77,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 215
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingIntersectionFinder:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingIntersectionFinder:215"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].getErrorMessage()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersectionSegments()"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.FastNodingValidator:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:121"
        BranchSideFuncs:
        - "getIntersectionSegments()"
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:122,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersectionSegments()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:123,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:124,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:126,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersectionSegments()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:140,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.TopologyException:39,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 23
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Coordinate"
    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: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.TopologyException:24"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.TopologyException:26"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.TopologyException:25"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:25,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.TopologyException:25,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.TopologyException:25,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.TopologyException:25,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 19
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:131"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
        - "<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
        - "add(org.locationtech.jts.geomgraph.EdgeEnd)"
        - "setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:119,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:119,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:121,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:123,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:125,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:128,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].computeDirectedLabel()"
    functionUses: 2
    ICount: 27
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:68"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "getNumPoints()"
        - "init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:63,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:66,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:66,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:69,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:72,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].computeDirectedLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 3
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:58"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:57"
        BranchSideFuncs:
        - "quadrant(double,double)"
        - "isTrue(boolean,java.lang.String)"
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:58"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:57"
        BranchSideFuncs:
        - "quadrant(double,double)"
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:62,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:63,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].computeDirectedLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].flip()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:192"
        BranchSideFuncs:
        - "flip()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:189,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:189,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:191,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:94,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:95,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:84,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:85,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:86,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].setNode(org.locationtech.jts.geomgraph.Node)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:75,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - Src: "org.locationtech.jts.geomgraph.Node:76,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].setNode(org.locationtech.jts.geomgraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].setNode(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelling()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].mergeSymLabels()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].updateNodeLabelling()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:434"
        BranchSideFuncs:
        - "getEdges()"
        - "computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:433"
        BranchSideFuncs:
        - "updateNodeLabelling()"
        - "mergeSymLabels()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:429,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:429,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:429,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:430,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:432,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:432,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:434,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].mergeSymLabels()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:435,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].updateNodeLabelling()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].values()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:99,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].values()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 101
    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: "org.locationtech.jts.geomgraph.NodeMap:102,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeEndStar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].mergeSymLabels()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 444
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].mergeSymLabels()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 13
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:450"
        BranchSideFuncs:
        - "getEdges()"
        - "next()"
        - "mergeSymLabels()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:449"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:445,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:445,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:445,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:446,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:447,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:447,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].mergeSymLabels()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].mergeSymLabels()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:138"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:133,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:133,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:135,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:136,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:136,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Label"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].updateNodeLabelling()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 456
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getLabel()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:462"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "getEdges()"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:461"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:457,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:457,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:457,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:458,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:459,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:459,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:460,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:460,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Label"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNodes()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 481
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].updateLabelling(org.locationtech.jts.geomgraph.Label)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:503"
        BranchSideFuncs:
        - "getLabel()"
        - "isIsolated()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:502"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:492"
        BranchSideFuncs:
        - "getEdges()"
        - "updateLabelling(org.locationtech.jts.geomgraph.Label)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:489"
        BranchSideFuncs:
        - "labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:482,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:482,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:482,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:483,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:484,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:485,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:487,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:488,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:493,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:493,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].updateLabelling(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:60"
        BranchSideFuncs:
        - "getGeometryCount()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:61,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:168"
        BranchSideFuncs:
        - "isNull()"
      - BranchSide: "org.locationtech.jts.geomgraph.Label:167"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geomgraph.Label:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Label:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:167,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 509
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:510,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:510,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:510,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:514,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:514,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 7
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:93"
        BranchSideFuncs:
        - "locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:97"
        BranchSideFuncs:
        - "locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:96"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:91,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:99,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:100,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.PointLocation].isOnLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 3
    ICount: 32
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:166"
        BranchSideFuncs:
        - "getCoordinateSequence()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:170"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals(java.lang.Object)"
        - "size()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:169"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:174"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:173"
        BranchSideFuncs:
        - "isOnLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:170"
        BranchSideFuncs:
        - "isInBoundary(int)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:169"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:170"
        BranchSideFuncs:
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:165,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:165,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:167,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:168,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:169,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:170,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:171,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:174,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].isOnLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 634
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 1
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:635"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:636"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:635"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:635,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].isOnLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.PointLocation].isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 18
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:89"
        BranchSideFuncs:
        - "getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
        - "isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:78"
        BranchSideFuncs:
        - "<init>()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:79,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.PointLocation:81,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.PointLocation:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocation:85,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:40"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:42"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:42"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:38,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocation:41,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocation:43,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:59"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 10
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 3
    ICount: 24
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:191"
        BranchSideFuncs:
        - "getExteriorRing()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:197"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:204"
        BranchSideFuncs:
        - "locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:197"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:190,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:192,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:194,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:198,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:199,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 9
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:184"
        BranchSideFuncs:
        - "locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:183,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:183,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:185,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:185,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:130,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.algorithm.PointLocator].updateLocationInfo(int)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 62
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:116"
        BranchSideFuncs:
        - "locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:136"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:144"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:144"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:142"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:110,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:114,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:114,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].updateLocationInfo(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:117,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:120,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:124,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:125,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:137,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:138,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:139,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:141,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 25
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:156,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:157,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].updateLocationInfo(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:149"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollectionIterator"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry:org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].updateLabelling(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setAllLocationsIfNull(int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:153"
        BranchSideFuncs:
        - "setAllLocationsIfNull(int,int)"
        - "getLabel()"
        - "next()"
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:147,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:147,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:148,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:149,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:150,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:150,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setAllLocationsIfNull(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].setAllLocationsIfNull(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocationsIfNull(int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:140,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocationsIfNull(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocationsIfNull(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:130"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].findResultAreaEdges(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:541"
        BranchSideFuncs:
        - "isArea()"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:531"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:540"
        BranchSideFuncs:
        - "isInteriorAreaEdge()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:539"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:527,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:527,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:527,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:528,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:530,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:531,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:532,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:534,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:533,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:537,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:181"
        BranchSideFuncs:
        - "isArea(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:178"
        BranchSideFuncs:
        - "getLocation(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:175,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:176,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:182,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 28
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].cancelDuplicateResultEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:550"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:559"
        BranchSideFuncs:
        - "isInResult()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:558"
        BranchSideFuncs:
        - "setInResult(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:557"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:558"
        BranchSideFuncs:
        - "setInResult(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:557"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:550,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:550,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:550,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:551,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:552,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:553,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:554,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(org.locationtech.jts.geomgraph.PlanarGraph)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.PlanarGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:56,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:56,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:56,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].linkResultDirectedEdges(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMaximalEdgeRings(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMinimalEdgeRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].sortShellsAndHoles(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:66,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].linkResultDirectedEdges(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:67,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMaximalEdgeRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:68,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:69,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMinimalEdgeRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:70,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].sortShellsAndHoles(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:71,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].linkResultDirectedEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:63"
        BranchSideFuncs:
        - "getEdges()"
        - "next()"
        - "linkResultDirectedEdges()"
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:59,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:60,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:61,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:61,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 51
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:222"
        BranchSideFuncs:
        - "isArea()"
        - "getLabel()"
        - "getSym()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:215"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:227"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:226"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "isInResult()"
        - "setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:191,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:197,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:198,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:199,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:216,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:225,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:225,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:227,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:159"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:158"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:165"
        BranchSideFuncs:
        - "isInResult()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:163"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:164"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:159,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:160,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:160,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:163,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 138
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMaximalEdgeRings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    - "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geomgraph.EdgeRing].setInResult()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:100"
        BranchSideFuncs:
        - "isArea()"
        - "isInResult()"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:99"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
        - "setInResult()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:87,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:88,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:88,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:89,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:90,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:90,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:90,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:92,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:93,1"
      Dst: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:94,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:95,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].setInResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:46,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMinimalEdgeRings(java.util.List,java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeRing].getMaxNodeDegree()"
    - "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].linkDirectedEdgesForMinimalEdgeRings()"
    - "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].buildMinimalRings()"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].findShell(java.util.List)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].placePolygonHoles(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.jdom2.ContentList].addAll(java.util.Collection)"
    - "[org.jdom2.AttributeList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 25
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:125"
        BranchSideFuncs:
        - "getMaxNodeDegree()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:122"
        BranchSideFuncs:
        - "buildMinimalRings()"
        - "findShell(java.util.List)"
        - "linkDirectedEdgesForMinimalEdgeRings()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:118"
        BranchSideFuncs:
        - "placePolygonHoles(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:117"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:105,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:106,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:106,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:107,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:108,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].getMaxNodeDegree()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:109,1"
      Dst: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].linkDirectedEdgesForMinimalEdgeRings()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:110,1"
      Dst: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].buildMinimalRings()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:112,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].findShell(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:114,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].placePolygonHoles(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:115,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:118,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].linkDirectedEdgesForMinimalEdgeRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:65"
        BranchSideFuncs:
        - "getEdges()"
        - "linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
        - "getNext()"
        - "getNode()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:66,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:67,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:67,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:68,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setNextMin(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 52
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
        BranchSideFuncs:
        - "getSym()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:252"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:263"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdgeRing()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260"
        BranchSideFuncs:
        - "setNextMin(org.locationtech.jts.geomgraph.DirectedEdge)"
        - "isTrue(boolean,java.lang.String)"
        - "getEdgeRing()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:238,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:239,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:240,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:243,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:253,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setNextMin(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 22
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setNextMin(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].buildMinimalRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getMinEdgeRing()"
    - "[org.locationtech.jts.operation.overlay.MinimalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:81"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:80"
        BranchSideFuncs:
        - "getNext()"
    - Branch String: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:76"
        BranchSideFuncs:
        - "getMinEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:74,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:77,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getMinEdgeRing()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:78,1"
      Dst: "[org.locationtech.jts.operation.overlay.MinimalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:79,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:81,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getMinEdgeRing()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.MinimalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MinimalEdgeRing"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MinimalEdgeRing:32,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].findShell(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "org.locationtech.jts.geomgraph.EdgeRing"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeRing].isHole()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 20
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:149"
        BranchSideFuncs:
        - "next()"
        - "isHole()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:148"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:149"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:148"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:142,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:142,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:144,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:149,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].placePolygonHoles(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeRing"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeRing].isHole()"
    - "[org.locationtech.jts.geomgraph.EdgeRing].setShell(org.locationtech.jts.geomgraph.EdgeRing)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 13
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:171"
        BranchSideFuncs:
        - "next()"
        - "isHole()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:170"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.geomgraph.EdgeRing)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:165,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:165,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:166,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:167,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:168,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].setShell(org.locationtech.jts.geomgraph.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].sortShellsAndHoles(java.util.List,java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeRing].isHole()"
    - "[org.jdom2.AttributeList].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: 16
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:191"
        BranchSideFuncs:
        - "next()"
        - "isHole()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:187"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:181,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:181,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:182,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:184,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:185,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 206
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeRing].getShell()"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].findEdgeRingContaining(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.EdgeRing].getCoordinate(int)"
    - "[org.locationtech.jts.geomgraph.EdgeRing].setShell(org.locationtech.jts.geomgraph.EdgeRing)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 19
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:218"
        BranchSideFuncs:
        - "next()"
        - "getShell()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:217"
        BranchSideFuncs:
        - "findEdgeRingContaining(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:215"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:214"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.geomgraph.EdgeRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:207,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:207,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:208,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:210,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].getShell()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:211,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].findEdgeRingContaining(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:213,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:213,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:215,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].setShell(org.locationtech.jts.geomgraph.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].findEdgeRingContaining(org.locationtech.jts.geomgraph.EdgeRing,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 10
    returnType: "org.locationtech.jts.geomgraph.EdgeRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeRing"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeRing].getLinearRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].ptNotInList(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 37
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:266"
        BranchSideFuncs:
        - "next()"
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:251"
        BranchSideFuncs:
        - "ptNotInList(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
        - "isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:261"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:260"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getLinearRing()"
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:265"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getLinearRing()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:236,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].getLinearRing()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:237,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:238,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:242,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:242,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:243,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:248,1"
      Dst: "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:250,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:252,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:252,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].ptNotInList(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:254,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 786
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionUses: 3
    ICount: 30
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:787"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:790"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:789"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:791"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:794"
        BranchSideFuncs:
        - "isNull()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:793"
        BranchSideFuncs:
        - "getMaxX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:794"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:795"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:796"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:797"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:791,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:794,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:795,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:796,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:797,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 751
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 10
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:751"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:753"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:753"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:754"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:755"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:756"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:752,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:753,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:754,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:755,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:756,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].ptNotInList(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:192"
        BranchSideFuncs:
        - "indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:189,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 608
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:null"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:610"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:609"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:608"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:610,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].isInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:110"
        BranchSideFuncs:
        - "locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:111,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].computePolygons(java.util.List)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:77,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].computePolygons(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].computePolygons(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 269
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PolygonBuilder:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:277"
        BranchSideFuncs:
        - "next()"
        - "toPolygon(org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PolygonBuilder:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:270,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:272,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:272,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:273,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:274,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:275,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.LineBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.LineBuilder"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlay.OverlayOp"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.algorithm.PointLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:39,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.LineBuilder].build(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.LineBuilder"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 16
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.LineBuilder].findCoveredLineEdges()"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].collectLines(int)"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].buildLines(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:52,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].findCoveredLineEdges()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:53,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].collectLines(int)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:55,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].buildLines(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.LineBuilder].findCoveredLineEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.LineBuilder"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].findCoveredLineEdges()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isCoveredSet()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByA(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].setCovered(boolean)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 32
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:78"
        BranchSideFuncs:
        - "getEdges()"
        - "findCoveredLineEdges()"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:77"
        BranchSideFuncs:
        - "hasNext()"
        - "getEdgeEnds()"
        - "iterator()"
        - "getGraph()"
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:86"
        BranchSideFuncs:
        - "isCoveredSet()"
        - "isLineEdge()"
        - "next()"
        - "getEdge()"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:85"
        BranchSideFuncs:
        - "setCovered(boolean)"
        - "isCoveredByA(org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:85"
        BranchSideFuncs:
        - "setCovered(boolean)"
        - "isCoveredByA(org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:68,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:68,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:68,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:68,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:71,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:71,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].findCoveredLineEdges()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:78,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:80,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:81,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:81,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isCoveredSet()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:82,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:82,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByA(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:83,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].setCovered(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.PlanarGraph"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].findCoveredLineEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 302
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].setCovered(boolean)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 52
    EdgeCount: 76
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:308"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:325"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:341"
        BranchSideFuncs:
        - "isLineEdge()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:335"
        BranchSideFuncs:
        - "setCovered(boolean)"
        - "getEdge()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:334"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:330"
        BranchSideFuncs:
        - "setCovered(boolean)"
        - "getEdge()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:336"
        BranchSideFuncs:
        - "isInResult()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:304,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:304,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:305,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:306,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:307,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:308,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:331,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:331,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].setCovered(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 23
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 153
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].isLine(int)"
    - "[org.locationtech.jts.geomgraph.Label].allPositionsEqual(int,int)"
    - "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    functionUses: 5
    ICount: 37
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:154"
        BranchSideFuncs:
        - "isLine(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:153"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:154"
        BranchSideFuncs:
        - "isLine(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:153"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:154"
        BranchSideFuncs:
        - "allPositionsEqual(int,int)"
        - "isArea(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:153"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:154"
        BranchSideFuncs:
        - "allPositionsEqual(int,int)"
        - "isArea(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:153"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:155"
        BranchSideFuncs:
        - "allPositionsEqual(int,int)"
        - "isArea(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:155"
        BranchSideFuncs:
        - "allPositionsEqual(int,int)"
        - "isArea(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:154,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isLine(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:156,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:156,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].allPositionsEqual(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 18
  - functionName: "[org.locationtech.jts.geomgraph.Label].isLine(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isLine()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:184,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isLine()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:111"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].allPositionsEqual(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].allPositionsEqual(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:194,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].allPositionsEqual(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].allPositionsEqual(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:151"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByA(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 579
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:581"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:580"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:580,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 588
    functionDepth: 13
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 14
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:589"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:594"
        BranchSideFuncs:
        - "next()"
        - "locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:593"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:592"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:592"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:589,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:589,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:590,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:591,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlay.LineBuilder].collectLines(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.LineBuilder"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].collectLineEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].collectBoundaryTouchEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 16
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:95"
        BranchSideFuncs:
        - "next()"
        - "collectLineEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
        - "collectBoundaryTouchEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:90,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:90,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:90,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:90,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:92,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].collectLineEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:93,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].collectBoundaryTouchEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.LineBuilder].collectLineEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.LineBuilder"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isCovered()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setVisitedEdge(boolean)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:121"
        BranchSideFuncs:
        - "isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
        - "isCovered()"
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:109,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:110,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:112,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:113,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:113,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:113,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isCovered()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:117,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:118,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisitedEdge(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:102,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:104,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisitedEdge(boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:124,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.LineBuilder].collectBoundaryTouchEdge(org.locationtech.jts.geomgraph.DirectedEdge,int,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.LineBuilder"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setVisitedEdge(boolean)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:137"
        BranchSideFuncs:
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:136"
        BranchSideFuncs:
        - "isVisited()"
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:138"
        BranchSideFuncs:
        - "isInteriorAreaEdge()"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:137"
        BranchSideFuncs:
        - "isInteriorAreaEdge()"
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:141"
        BranchSideFuncs:
        - "isInResult()"
        - "getSym()"
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:142"
        BranchSideFuncs:
        - "isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
        - "isInResult()"
        - "getSym()"
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:141"
        BranchSideFuncs:
        - "isInResult()"
        - "getSym()"
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:142"
        BranchSideFuncs:
        - "isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
        - "isInResult()"
        - "getSym()"
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:141"
        BranchSideFuncs:
        - "isInResult()"
        - "getSym()"
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:142"
        BranchSideFuncs:
        - "isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
        - "isInResult()"
        - "getSym()"
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:141"
        BranchSideFuncs:
        - "isInResult()"
        - "getSym()"
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:135,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:136,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:137,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:138,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:139,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:139,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:142,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:145,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:148,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:149,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisitedEdge(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 17
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.LineBuilder].buildLines(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.LineBuilder"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].setInResult(boolean)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.LineBuilder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:162"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "createLineString(org.locationtech.jts.geom.Coordinate[])"
        - "next()"
        - "getCoordinates()"
        - "setInResult(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.LineBuilder:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:155,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:155,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:156,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:158,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:158,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:159,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.LineBuilder:160,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].setInResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlay.OverlayOp"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.algorithm.PointLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:32,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].build(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 17
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.PointBuilder].extractNonCoveredResultNodes(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:48,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].extractNonCoveredResultNodes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].extractNonCoveredResultNodes(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - "[org.locationtech.jts.geomgraph.Node].isIncidentEdgeInResult()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getDegree()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - "[org.locationtech.jts.operation.overlay.PointBuilder].filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 26
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:92"
        BranchSideFuncs:
        - "isInResult()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:76"
        BranchSideFuncs:
        - "isIncidentEdgeInResult()"
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:78"
        BranchSideFuncs:
        - "getEdges()"
        - "getDegree()"
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:84"
        BranchSideFuncs:
        - "isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
        - "getLabel()"
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:90"
        BranchSideFuncs:
        - "filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:71,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:74,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:77,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].isIncidentEdgeInResult()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:79,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:79,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getDegree()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:85,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:86,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:87,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[org.locationtech.jts.geomgraph.Node].isIncidentEdgeInResult()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:56"
        BranchSideFuncs:
        - "isInResult()"
        - "getEdge()"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.Node:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Node:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.Node:52,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.Node:53,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.geomgraph.Node:53,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByLA(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:110"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.Coordinate)"
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:105,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:106,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByLA(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:108,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByLA(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 567
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:568"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:569"
        BranchSideFuncs:
        - "isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:568"
        BranchSideFuncs:
        - "isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:568,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeGeometry(java.util.List,java.util.List,java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:614"
        BranchSideFuncs:
        - "getGeometry()"
        - "createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:613"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:602,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:604,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:609,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:610,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:610,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:614,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 640
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].resultDimension(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:641,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].resultDimension(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:646,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].resultDimension(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 650
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:651,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:657,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:660,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 631
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[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: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:633,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:634,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:635,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:636,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:311,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:52"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.GeometryCollection:54,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:157,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:158,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPolygon"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPolygon:64,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:146,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:147,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:55,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Point[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:112,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:113,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.AssertionFailedException"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.AssertionFailedException:36,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:21,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions].symDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:22,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions].difference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:23,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions].differenceBA(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:24,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNoSnapFunctions$1].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:27,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions$1].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:39,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:40,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions:41,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions$1].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions$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: "org.locationtech.jtstest.function.OverlayNoSnapFunctions$1:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:147,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].extract(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:161,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].extract(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].extract(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.union.InputExtracter"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:60,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:61,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    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: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:66,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:85,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 631
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[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: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:633,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:634,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:635,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:636,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    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()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:277,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:278,1"
      Dst: "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.operation.union.UnionStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:93,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:94,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.operation.union.UnionStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].size()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:122,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:127,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:128,1"
      Dst: "[java.util.Collection].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - "[java.util.Iterator].hasNext()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].itemsTree()"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionTree(java.util.List)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:157,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:158,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:169,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:170,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:172,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:172,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:177,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].itemsTree()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:179,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionTree(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:185,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionTree(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].reduceToGeometries(java.util.List)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:189,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].reduceToGeometries(java.util.List)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:191,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].reduceToGeometries(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionTree(java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:281,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:282,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:282,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:283,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:286,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionTree(java.util.List)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:291,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:227,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:227,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].getGeometry(java.util.List,int)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionSafe(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List,int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:242,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].getGeometry(java.util.List,int)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:243,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionSafe(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:251,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].binaryUnion(java.util.List,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].getGeometry(java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:268,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:269,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionSafe(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.util.Debug].isDebugging()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[org.locationtech.jts.util.Debug].print(java.lang.String)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionActual(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:311,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:316,1"
      Dst: "[org.locationtech.jts.util.Debug].isDebugging()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:317,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:317,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:317,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:317,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:317,1"
      Dst: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:318,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:318,1"
      Dst: "[org.locationtech.jts.util.Debug].print(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:321,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionActual(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.util.Debug].isDebugging()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - "[org.locationtech.jts.util.Debug].println()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:126,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Debug:127,1"
      Dst: "[org.locationtech.jts.util.Debug].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - Src: "org.locationtech.jts.util.Debug:282,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:288,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.util.Debug:289,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.util.Debug:290,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Object].toString()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:297,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.util.Debug:299,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "org.locationtech.jts.util.Debug:301,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:302,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "org.locationtech.jts.util.Debug:305,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jts.util.Debug:305,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:309,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:322,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].println()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:314,1"
      Dst: "[java.io.PrintStream].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].print(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:102,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionActual(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].restrictToPolygons(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:338,1"
      Dst: "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:339,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].restrictToPolygons(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].restrictToPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:361"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:360"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:364"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:363"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:361,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:362,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:363,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:364,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:364,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:364,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PolygonExtracter:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:43"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PolygonExtracter:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:48"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.GeometryFilter)"
        - "<init>(java.util.List)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:41,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:44,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:67,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:157,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:158,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:260,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.PointGeometryUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Puntal"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].<init>(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:40,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].<init>(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:41,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PointGeometryUnion].<init>(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.PointGeometryUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Puntal"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PointGeometryUnion].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.PointGeometryUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[java.util.TreeSet].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].size()"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.PointGeometryUnion:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.PointGeometryUnion:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.PointGeometryUnion:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.PointGeometryUnion:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PointGeometryUnion:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:57,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:59,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:61,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:62,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:63,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:64,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:66,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:70,1"
      Dst: "[java.util.Set].size()"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:77,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.union.PointGeometryUnion:84,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 7
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:93"
        BranchSideFuncs:
        - "locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:97"
        BranchSideFuncs:
        - "locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:96"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:91,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:99,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:100,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getMeasures()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:442"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:441"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:448"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:440,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:442,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:444,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:446,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:447,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:71,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence:org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.Math].min(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:87,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:61,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:61,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:62,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:88,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:89,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:120,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:132,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:134,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:145,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:147,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:148,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:151,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:154,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:159,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:168,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:171,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:311,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.awt.PointTransformation"
    - "org.locationtech.jts.awt.PointShapeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:71,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.awt.PointTransformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:105,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:112,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:71,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].setRemoveDuplicatePoints(boolean)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].setDecimation(double)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    - "[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: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:170,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:170,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:171,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:172,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:173,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:174,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:175,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:177,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PolygonShape].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.awt.ShapeWriter].appendRing(org.locationtech.jts.awt.PolygonShape,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:183,1"
      Dst: "[org.locationtech.jts.awt.PolygonShape].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:185,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:185,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:185,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].appendRing(org.locationtech.jts.awt.PolygonShape,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.awt.ShapeWriter:186,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:187,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.PolygonShape].<init>()"
    functionSourceFile: "org.locationtech.jts.awt.PolygonShape"
    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: "org.locationtech.jts.awt.PolygonShape:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].appendRing(org.locationtech.jts.awt.PolygonShape,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.awt.PolygonShape"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.awt.PolygonShape].addToRing(java.awt.geom.Point2D)"
    - "[org.locationtech.jts.awt.PolygonShape].endRing()"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:211,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:218,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:222,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:222,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:228,1"
      Dst: "[org.locationtech.jts.awt.PolygonShape].addToRing(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:231,1"
      Dst: "[org.locationtech.jts.awt.PolygonShape].endRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 26
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointTransformation].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:309,1"
      Dst: "[org.locationtech.jts.awt.PointTransformation].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.PolygonShape].addToRing(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jts.awt.PolygonShape"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.GeneralPath].<init>(int)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.PolygonShape:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.PolygonShape:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.PolygonShape:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PolygonShape:64,1"
      Dst: "[java.awt.geom.GeneralPath].<init>(int)"
    - Src: "org.locationtech.jts.awt.PolygonShape:65,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jts.awt.PolygonShape:65,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jts.awt.PolygonShape:65,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jts.awt.PolygonShape:68,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.PolygonShape].endRing()"
    functionSourceFile: "org.locationtech.jts.awt.PolygonShape"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Path2D].closePath()"
    - "[java.awt.geom.Path2D].append(java.awt.Shape,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.PolygonShape:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.PolygonShape:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.PolygonShape:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PolygonShape:74,1"
      Dst: "[java.awt.geom.Path2D].closePath()"
    - Src: "org.locationtech.jts.awt.PolygonShape:79,1"
      Dst: "[java.awt.geom.Path2D].append(java.awt.Shape,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.GeneralPath"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.Math].abs(double)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 84
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:294"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:258,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:260,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:261,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:262,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:262,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:262,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:267,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:273,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:292,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 24
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.GeneralPath"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - "[java.awt.geom.Path2D].append(java.awt.Shape,boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:247,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:249,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:250,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:251,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:251,1"
      Dst: "[java.awt.geom.Path2D].append(java.awt.Shape,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.awt.PointShapeFactory].createPoint(java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:300,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:300,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:301,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory].createPoint(java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:305,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:305,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:236,1"
      Dst: "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:238,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:239,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:240,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:240,1"
      Dst: "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    functionSourceFile: "org.locationtech.jts.awt.GeometryCollectionShape"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.GeometryCollectionShape:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.awt.GeometryCollectionShape:34,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    functionSourceFile: "org.locationtech.jts.awt.GeometryCollectionShape"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Shape"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.GeometryCollectionShape:40,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PolygonShape].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.awt.ShapeWriter].appendRing(org.locationtech.jts.awt.PolygonShape,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:183,1"
      Dst: "[org.locationtech.jts.awt.PolygonShape].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:185,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:185,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:185,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].appendRing(org.locationtech.jts.awt.PolygonShape,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.awt.ShapeWriter:186,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:187,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].appendRing(org.locationtech.jts.awt.PolygonShape,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.awt.PolygonShape"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.awt.PolygonShape].addToRing(java.awt.geom.Point2D)"
    - "[org.locationtech.jts.awt.PolygonShape].endRing()"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:211,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:218,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:222,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:222,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:228,1"
      Dst: "[org.locationtech.jts.awt.PolygonShape].addToRing(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:231,1"
      Dst: "[org.locationtech.jts.awt.PolygonShape].endRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 26
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:236,1"
      Dst: "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:238,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:239,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:240,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:240,1"
      Dst: "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.GeneralPath"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - "[java.awt.geom.Path2D].append(java.awt.Shape,boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:247,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:249,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:250,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:251,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:251,1"
      Dst: "[java.awt.geom.Path2D].append(java.awt.Shape,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.GeneralPath"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.Math].abs(double)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 84
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:294"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:258,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:260,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:261,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:262,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:262,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:262,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:267,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:273,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:292,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 24
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.awt.PointShapeFactory].createPoint(java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:300,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:300,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:301,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory].createPoint(java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:305,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:305,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].transformPoint(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointTransformation].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:309,1"
      Dst: "[org.locationtech.jts.awt.PointTransformation].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONArray].<init>()"
    functionSourceFile: "org.json.simple.JSONArray"
    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: "org.json.simple.JSONArray:19,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.io.Writer].write(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONArray:32"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:37"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:36"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:41"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:55"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:54"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:42"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:45"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:44"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:48"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:53"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONArray:33,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONArray:38,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.json.simple.JSONArray:40,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONArray:41,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONArray:47,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONArray:53,1"
      Dst: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[org.json.simple.JSONValue].escape(java.lang.String)"
    - "[java.lang.Double].isInfinite()"
    - "[java.lang.Double].isNaN()"
    - "[java.lang.Object].toString()"
    - "[java.lang.Float].isInfinite()"
    - "[java.lang.Float].isNaN()"
    - "[org.json.simple.JSONStreamAware].writeJSONString(java.io.Writer)"
    - "[org.json.simple.JSONAware].toJSONString()"
    - "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:96"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:101"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:100"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:101"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:108"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:107"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:108"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:116"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:115"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:109"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:110"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:109"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:109"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:112"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:111"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:116"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:124"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:123"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:117"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:118"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:117"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:117"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:120"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:119"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:124"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:129"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:128"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:129"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:134"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:133"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:134"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:139"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:138"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:139"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:144"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:143"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:144"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:149"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:148"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:149"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:154"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:97,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONValue:102,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONValue:103,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String)"
    - Src: "org.json.simple.JSONValue:109,1"
      Dst: "[java.lang.Double].isInfinite()"
    - Src: "org.json.simple.JSONValue:109,1"
      Dst: "[java.lang.Double].isNaN()"
    - Src: "org.json.simple.JSONValue:112,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.json.simple.JSONValue:117,1"
      Dst: "[java.lang.Float].isInfinite()"
    - Src: "org.json.simple.JSONValue:117,1"
      Dst: "[java.lang.Float].isNaN()"
    - Src: "org.json.simple.JSONValue:135,1"
      Dst: "[org.json.simple.JSONStreamAware].writeJSONString(java.io.Writer)"
    - Src: "org.json.simple.JSONValue:140,1"
      Dst: "[org.json.simple.JSONAware].toJSONString()"
    - Src: "org.json.simple.JSONValue:145,1"
      Dst: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - Src: "org.json.simple.JSONValue:150,1"
      Dst: "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 29
  - functionName: "[org.json.simple.JSONValue].escape(java.lang.String)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:216"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:218"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:218,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONValue:219,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONValue:220,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.String].toUpperCase()"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:228"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:270"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:269"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:266"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:265"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:266"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:265"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:260"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.JSONValue:229,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.json.simple.JSONValue:232,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONValue:258,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "org.json.simple.JSONValue:261,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONValue:263,1"
      Dst: "[java.lang.String].toUpperCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 17
    BBCount: 24
  - functionName: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.io.Writer].write(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[org.json.simple.JSONObject].escape(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:48"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:53"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:52"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:57"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:69"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:68"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:58"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:61"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:49,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.json.simple.JSONObject:56,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONObject:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONObject:62,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[org.json.simple.JSONObject].escape(java.lang.String)"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.json.simple.JSONObject].escape(java.lang.String)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONValue].escape(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:144,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONArray].writeJSONString(java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONArray:59,1"
      Dst: "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.io.Writer].write(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONArray:32"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:37"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:36"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:41"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:55"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:54"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:42"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:45"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:44"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:48"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:53"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONArray:33,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONArray:38,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.json.simple.JSONArray:40,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONArray:41,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONArray:47,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONArray:53,1"
      Dst: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.List].iterator()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONArray:72"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:75"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:74"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:80"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:93"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:92"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:81"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:84"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:83"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:87"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:91"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONArray:76,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONArray:77,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.json.simple.JSONArray:79,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONArray:80,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONArray:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONArray:88,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONArray:91,1"
      Dst: "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - Src: "org.json.simple.JSONArray:94,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.json.simple.JSONValue].escape(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Double].isInfinite()"
    - "[java.lang.Double].isNaN()"
    - "[java.lang.Object].toString()"
    - "[java.lang.Float].isInfinite()"
    - "[java.lang.Float].isNaN()"
    - "[org.json.simple.JSONAware].toJSONString()"
    - "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    - "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:172"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:175"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:174"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:175"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:178"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:177"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:178"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:185"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:184"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:179"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:180"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:179"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:179"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:182"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:181"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:185"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:192"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:191"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:186"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:187"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:186"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:186"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:189"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:188"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:192"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:195"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:194"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:195"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:198"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:197"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:198"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:201"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:200"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:201"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:204"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:203"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:204"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:207"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String)"
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.json.simple.JSONValue:179,1"
      Dst: "[java.lang.Double].isInfinite()"
    - Src: "org.json.simple.JSONValue:179,1"
      Dst: "[java.lang.Double].isNaN()"
    - Src: "org.json.simple.JSONValue:182,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.json.simple.JSONValue:186,1"
      Dst: "[java.lang.Float].isInfinite()"
    - Src: "org.json.simple.JSONValue:186,1"
      Dst: "[java.lang.Float].isNaN()"
    - Src: "org.json.simple.JSONValue:199,1"
      Dst: "[org.json.simple.JSONAware].toJSONString()"
    - Src: "org.json.simple.JSONValue:202,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    - Src: "org.json.simple.JSONValue:205,1"
      Dst: "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 25
  - functionName: "[org.json.simple.JSONValue].escape(java.lang.String)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:216"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:218"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:218,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONValue:219,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONValue:220,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:86"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:89"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:88"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:94"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:103"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:102"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:95"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:98"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:89,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONObject:91,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.json.simple.JSONObject:91,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.json.simple.JSONObject:93,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONObject:94,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONObject:100,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONObject:104,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:113"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:116"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:112,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONObject:114,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONObject:116,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONObject:119,1"
      Dst: "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:121,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.String].toUpperCase()"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:228"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:270"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:269"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:266"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:265"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:266"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:265"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:260"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.JSONValue:229,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.json.simple.JSONValue:232,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONValue:258,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "org.json.simple.JSONValue:261,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONValue:263,1"
      Dst: "[java.lang.String].toUpperCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 17
    BBCount: 24
  - functionName: "[org.json.simple.JSONArray].toJSONString()"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONArray:98,1"
      Dst: "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.List].iterator()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONArray:72"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:75"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:74"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:80"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:93"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:92"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:81"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:84"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:83"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONArray:87"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONArray:91"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONArray:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONArray:76,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONArray:77,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.json.simple.JSONArray:79,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONArray:80,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONArray:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONArray:88,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONArray:91,1"
      Dst: "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - Src: "org.json.simple.JSONArray:94,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.json.simple.JSONArray].toString()"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONArray].toJSONString()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONArray:102,1"
      Dst: "[org.json.simple.JSONArray].toJSONString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONArray].toJSONString()"
    functionSourceFile: "org.json.simple.JSONArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONArray:98,1"
      Dst: "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerTRIM_FULL_WHITE].<init>(java.util.List,org.jdom2.output.support.FormatStack,boolean)"
    functionSourceFile: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.jdom2.output.support.FormatStack"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].<init>(java.util.List,org.jdom2.output.support.FormatStack,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:79,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].<init>(java.util.List,org.jdom2.output.support.FormatStack,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerTRIM_FULL_WHITE].analyzeMultiText(org.jdom2.output.support.AbstractFormattedWalker$MultiText,int,int)"
    functionSourceFile: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].get(int)"
    - "[org.jdom2.Content].getValue()"
    - "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - "[org.jdom2.Content].getCType()"
    - "[java.lang.Enum].ordinal()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendText(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendCDATA(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendRaw(org.jdom2.Content)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:86"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:97"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:96"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:88"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:96"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:90"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:96"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:95"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:97"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:102"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:103"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:121"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:87,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].get(int)"
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:90,1"
      Dst: "[org.jdom2.Content].getValue()"
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:90,1"
      Dst: "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:105,1"
      Dst: "[org.jdom2.Content].getCType()"
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:105,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:107,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendText(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:110,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendCDATA(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerTRIM_FULL_WHITE:116,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendRaw(org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1284"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1289"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1288"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1285"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:1283,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:1285,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:1285,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1262"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendText(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.output.support.AbstractFormattedWalker$Trim"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.Enum].ordinal()"
    - "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - "[org.jdom2.output.Format].compact(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeText(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:187"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:190"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:208"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:213"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:186,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:191,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:196,1"
      Dst: "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:199,1"
      Dst: "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:202,1"
      Dst: "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:205,1"
      Dst: "[org.jdom2.output.Format].compact(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:209,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeText(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:210,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:210,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:211,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format:315"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:318"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:317"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:315"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:318"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:317"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:319"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:321"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:319"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:321"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:322"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:325"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:324"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format:314,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.Format:315,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.Format:315,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - Src: "org.jdom2.output.Format:325,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format:296"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:299"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:296"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:299"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:299"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:303"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format:294,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.Format:296,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.Format:296,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - Src: "org.jdom2.output.Format:303,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.output.Format].trimRight(java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format:277"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:280"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:279"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:277"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:280"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:279"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:280"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:283"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format:276,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.Format:277,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.Format:277,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - Src: "org.jdom2.output.Format:283,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.output.Format].compact(java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format:237"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:240"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:237"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:240"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:241"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:245"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:241"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:245"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:246"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:250"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:249"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:252"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:265"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:264"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:254"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:260"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:259"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:255"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format:235,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.Format:237,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.Format:237,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - Src: "org.jdom2.output.Format:251,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.jdom2.output.Format:256,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.output.Format:265,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeText(java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$500(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$600(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.FormatStack].getEscapeOutput()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$700(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:216"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:217"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:216"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:216"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:219"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:216,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$500(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:216,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$600(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:216,1"
      Dst: "[org.jdom2.output.support.FormatStack].getEscapeOutput()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:219,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$700(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:219,1"
      Dst: "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.support.FormatStack].getEscapeOutput()"
    functionSourceFile: "org.jdom2.output.support.FormatStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.jdom2.output.EscapeStrategy"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.output.EscapeStrategy].shouldEscape(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    functionUses: 0
    ICount: 106
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format:459"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:468"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:464"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:468"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:472"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:474"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:477"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:476"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:478"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:529"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:528"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:480"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:481"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:487"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:486"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:506"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:509"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:508"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:514"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:523"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:517"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:520"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:529"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:534"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format:457,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.Format:460,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.Format:461,1"
      Dst: "[org.jdom2.output.EscapeStrategy].shouldEscape(char)"
    - Src: "org.jdom2.output.Format:473,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.output.Format:475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - Src: "org.jdom2.output.Format:481,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - Src: "org.jdom2.output.Format:487,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.output.Format:509,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.output.Format:517,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 19
    BBCount: 37
  - functionName: "[org.jdom2.Verifier].isLowSurrogate(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1100"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1099"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:115,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].isHighSurrogate(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1087"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1086"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendCDATA(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.output.support.AbstractFormattedWalker$Trim"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - "[java.lang.Enum].ordinal()"
    - "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - "[org.jdom2.output.Format].compact(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeCDATA(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$800()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:236,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:238,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:243,1"
      Dst: "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:246,1"
      Dst: "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:249,1"
      Dst: "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:252,1"
      Dst: "[org.jdom2.output.Format].compact(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:256,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeCDATA(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:257,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:259,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:259,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:259,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$800()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:260,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:260,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:262,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 7
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[java.lang.StringBuilder].length()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:166"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:166,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:166,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:170,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:171,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:171,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:172,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:172,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:172,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:173,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$102(org.jdom2.output.support.AbstractFormattedWalker,org.jdom2.Content[])"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$202(org.jdom2.output.support.AbstractFormattedWalker,java.lang.String[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:154"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:154,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:154,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:155,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:155,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$102(org.jdom2.output.support.AbstractFormattedWalker,org.jdom2.Content[])"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:156,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:156,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$202(org.jdom2.output.support.AbstractFormattedWalker,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    functionSourceFile: "org.jdom2.internal.ArrayCopy"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ArrayCopy:82"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ArrayCopy:81"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ArrayCopy:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.jdom2.internal.ArrayCopy:82,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeCDATA(java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$500(org.jdom2.output.support.AbstractFormattedWalker)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:223"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:226"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:223,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$500(org.jdom2.output.support.AbstractFormattedWalker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendRaw(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:282,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:283,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:284,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:284,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:285,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:285,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:286,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:286,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PointNode].<init>(org.locationtech.jts.geom.Point,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PointNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jtstest.testbuilder.GeometryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PointNode:440,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PointNode].getIcon()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PointNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.ImageIcon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PointNode:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PointNode:445"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.PointNode].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PointNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PointNode].fillChildren()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PointNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jtstest.testbuilder.CoordinateNode].create(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PointNode:456,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jtstest.testbuilder.PointNode:456,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CoordinateNode].create(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.PointNode:456,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.CoordinateNode].create(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CoordinateNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.CoordinateNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CoordinateNode].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:506,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CoordinateNode].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CoordinateNode].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CoordinateNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CoordinateNode].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:530,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CoordinateNode].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CoordinateNode].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CoordinateNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CoordinateNode].label(org.locationtech.jts.geom.Coordinate,int,double)"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:535,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CoordinateNode].label(org.locationtech.jts.geom.Coordinate,int,double)"
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:535,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CoordinateNode].label(org.locationtech.jts.geom.Coordinate,int,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CoordinateNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.text.NumberFormat].format(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.StringBuilder].append(double)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CoordinateNode:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CoordinateNode:522"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CoordinateNode:521"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:518,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:518,1"
      Dst: "[java.text.NumberFormat].format(double)"
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:518,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:518,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:519,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jtstest.testbuilder.CoordinateNode:520,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.filter.NegateFilter].<init>(org.jdom2.filter.Filter)"
    functionSourceFile: "org.jdom2.filter.NegateFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.filter.Filter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.NegateFilter:79,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.NegateFilter].filter(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.NegateFilter"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].matches(java.lang.Object)"
    - "[org.jdom2.filter.Filter].matches(java.lang.Object)"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.filter.NegateFilter:85"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.NegateFilter:88"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.NegateFilter:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.NegateFilter:85,1"
      Dst: "[org.jdom2.filter.Filter].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.filter.NegateFilter].getBaseFilter()"
    functionSourceFile: "org.jdom2.filter.NegateFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.NegateFilter].equals(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.NegateFilter"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.NegateFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ElementFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ClassFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.AttributeFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.AndFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.OrFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ContentFilter:org.jdom2.filter.TextOnlyFilter].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 10
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.jdom2.filter.NegateFilter:97"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.NegateFilter:101"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.NegateFilter:100"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.NegateFilter:101"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.NegateFilter:104"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.jdom2.filter.NegateFilter:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.NegateFilter:102,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.filter.NegateFilter].hashCode()"
    functionSourceFile: "org.jdom2.filter.NegateFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.NegateFilter:109,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.NegateFilter].toString()"
    functionSourceFile: "org.jdom2.filter.NegateFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.NegateFilter:114,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.jdom2.filter.NegateFilter:114,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.filter.NegateFilter:114,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.jdom2.filter.NegateFilter:114,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    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: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:228,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.index.strtree.ItemBoundable,org.locationtech.jts.index.strtree.ItemBoundable)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.ItemBoundable"
    - "org.locationtech.jts.index.strtree.ItemBoundable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:240,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:243,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 34
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:250,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:253,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:262,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:264,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:265,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:97,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].updatePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:283,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:288,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:289,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:292,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].updatePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].updatePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:305,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:306,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:306,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 4
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:378"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:377"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:377,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 443
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    functionUses: 3
    ICount: 25
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:444,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:250,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:253,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:260,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:262,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:264,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:265,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].updatePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:280,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:283,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:288,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:289,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:292,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].updatePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].updatePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:305,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:306,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:306,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>(org.locationtech.jts.precision.MinimumClearance$1)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.MinimumClearance$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:228,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    functionSourceFile: "org.json.simple.parser.Yytoken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yytoken:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yytoken].toString()"
    functionSourceFile: "org.json.simple.parser.Yytoken"
    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(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yytoken:29,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.parser.Yytoken:32,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.parser.Yytoken:32,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.Object)"
    - Src: "org.json.simple.parser.Yytoken:56,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 10
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$9].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$9:288,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$9].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$9:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$9:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$9:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$9:294,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$9:295,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$9:297,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$9:299,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].<init>()"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:84,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.CDATA].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:98,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.CDATA:99,1"
      Dst: "[org.jdom2.CDATA].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].setText(java.lang.String)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.CDATA"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.CDATA:118"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:119"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:118"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:118"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:123"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:122"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:124"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:128"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.CDATA:118,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.CDATA:123,1"
      Dst: "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - Src: "org.jdom2.CDATA:125,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:508"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:512"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:511"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:512"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:518"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:508,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Verifier:512,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[org.jdom2.Verifier].isXMLCharacter(int)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:434"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:438"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:439"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:494"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:450"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:460"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:452"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:449"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:461"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:488"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:465"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:469"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:468"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:469"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:481"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:471"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:438,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:450,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:461,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.jdom2.Verifier:469,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].isXMLCharacter(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[org.jdom2.Verifier].isHighSurrogate(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1087"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1086"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Verifier].isLowSurrogate(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1100"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1099"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].isXMLCharacter(int)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1127"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1130"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1129"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1128"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1127"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1130"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].append(java.lang.String)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.CDATA:149"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:150"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:149"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:149"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:156"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:155"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:156"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:159"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:158"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:169"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:173"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.CDATA:149,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.CDATA:159,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.CDATA:159,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.CDATA:159,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.CDATA:168,1"
      Dst: "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - Src: "org.jdom2.CDATA:170,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:508"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:512"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:511"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:512"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:518"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:508,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Verifier:512,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].append(org.jdom2.Text)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Text"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].getText()"
    - "[org.jdom2.CDATA].append(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.CDATA:188"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:191"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.CDATA:191,1"
      Dst: "[org.jdom2.Text].getText()"
    - Src: "org.jdom2.CDATA:191,1"
      Dst: "[org.jdom2.CDATA].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Text].getText()"
    functionSourceFile: "org.jdom2.Text"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].append(java.lang.String)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.CDATA:149"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:150"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:149"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:149"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:156"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:155"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:156"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:159"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:158"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:169"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:173"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.CDATA:149,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.CDATA:159,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.CDATA:159,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.CDATA:159,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.CDATA:168,1"
      Dst: "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - Src: "org.jdom2.CDATA:170,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.jdom2.CDATA].toString()"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Text].getText()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:206,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.jdom2.CDATA:206,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.CDATA:206,1"
      Dst: "[org.jdom2.Text].getText()"
    - Src: "org.jdom2.CDATA:206,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].getText()"
    functionSourceFile: "org.jdom2.Text"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].clone()"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 1
    returnType: "org.jdom2.CDATA"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].clone()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:215,1"
      Dst: "[org.jdom2.Text].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].clone()"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 0
    returnType: "org.jdom2.Text"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].clone()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:257,1"
      Dst: "[org.jdom2.Content].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].detach()"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.CDATA"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].detach()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:220,1"
      Dst: "[org.jdom2.Text].detach()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].detach()"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Text"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].detach()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:264,1"
      Dst: "[org.jdom2.Content].detach()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 1
    returnType: "org.jdom2.CDATA"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:225,1"
      Dst: "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: 268
    functionDepth: 0
    returnType: "org.jdom2.Text"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:269,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    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: "org.locationtech.jtstest.testbuilder.controller.CommandController:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].ui()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.CommandPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFrame].<init>()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JSplitPane].<init>()"
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].<init>()"
    - "[javax.swing.JTabbedPane].<init>()"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].<init>()"
    - "[javax.swing.JFileChooser].<init>()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.awt.Component].enableEvents(long)"
    - "[javax.swing.ImageIcon].getImage()"
    - "[javax.swing.JFrame].setIconImage(java.awt.Image)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].jbInit()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].initFileDrop(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 110
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:99,1"
      Dst: "[javax.swing.JFrame].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:69,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:71,1"
      Dst: "[javax.swing.JSplitPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:72,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:76,1"
      Dst: "[javax.swing.JTabbedPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:84,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:85,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:91,1"
      Dst: "[javax.swing.JFileChooser].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:101,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:103,1"
      Dst: "[java.awt.Component].enableEvents(long)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:104,1"
      Dst: "[javax.swing.ImageIcon].getImage()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:104,1"
      Dst: "[javax.swing.JFrame].setIconImage(java.awt.Image)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:106,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:114,1"
      Dst: "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].initFileDrop(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:125,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[javax.swing.JMenuBar].<init>()"
    - "[javax.swing.JMenu].<init>()"
    - "[javax.swing.JMenuItem].<init>()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:25,1"
      Dst: "[javax.swing.JMenuBar].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:26,1"
      Dst: "[javax.swing.JMenu].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:28,1"
      Dst: "[javax.swing.JMenuItem].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[javax.swing.JToolBar].<init>()"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    functionUses: 0
    ICount: 126
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:34,1"
      Dst: "[javax.swing.JToolBar].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:35,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:49,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:49,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:49,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[javax.swing.JTabbedPane].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].<init>()"
    - "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 112
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:103,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:57,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:61,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:66,1"
      Dst: "[javax.swing.JTabbedPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:69,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:75,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:76,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:83,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:94,1"
      Dst: "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:94,1"
      Dst: "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:95,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:108,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:100,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:84,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:94,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:109,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].setGridSize(double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].setGridSize(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].setGridSize(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].floor(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:68,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:75"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:66,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:48,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:56,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:312,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[java.text.NumberFormat].getInstance()"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.text.NumberFormat].setMaximumFractionDigits(int)"
    - "[java.text.NumberFormat].setGroupingUsed(boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:95,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:97,1"
      Dst: "[java.text.NumberFormat].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:98,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:102,1"
      Dst: "[java.text.NumberFormat].setMaximumFractionDigits(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:104,1"
      Dst: "[java.text.NumberFormat].setGroupingUsed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScaleToSingleDigitPrecision(double)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScaleToSingleDigitPrecision(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScaleToSingleDigitPrecision(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:142,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:142,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:143,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].log10(double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:92,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.math.MathUtil:93,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.math.MathUtil:94,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPopupMenu].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].initUI()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:28,1"
      Dst: "[javax.swing.JPopupMenu].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].initUI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].initUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JMenuItem].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$1].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[javax.swing.JPopupMenu].add(javax.swing.JMenuItem)"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$2].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:34,1"
      Dst: "[javax.swing.JMenuItem].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:35,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$1].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:35,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:41,1"
      Dst: "[javax.swing.JPopupMenu].add(javax.swing.JMenuItem)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$2].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$1].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$1:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$2].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$2:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.text.NumberFormat].getInstance()"
    - "[java.text.NumberFormat].setGroupingUsed(boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:47,1"
      Dst: "[java.text.NumberFormat].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:48,1"
      Dst: "[java.text.NumberFormat].setGroupingUsed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:44,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:33,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.Component].addComponentListener(java.awt.event.ComponentListener)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.BorderFactory].createEmptyBorder()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:116,1"
      Dst: "[java.awt.Component].addComponentListener(java.awt.event.ComponentListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:122,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:123,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:123,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:124,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:126,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:127,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ComponentAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$1:116,1"
      Dst: "[java.awt.event.ComponentAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    - "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - "[javax.swing.Timer].setInitialDelay(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:36,1"
      Dst: "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:52,1"
      Dst: "[javax.swing.Timer].setInitialDelay(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager$1:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel$1].<init>(org.locationtech.jtstest.testbuilder.RelatePanel)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].jbInit()"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 227
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:132,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:40,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:46,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:52,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:85,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:107,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:107,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:107,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel$1].<init>(org.locationtech.jtstest.testbuilder.RelatePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:139,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel$1].<init>(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.RelatePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel$1:111,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - "[javax.swing.border.TitledBorder].<init>(javax.swing.border.Border,java.lang.String)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.BorderFactory].createCompoundBorder(javax.swing.border.Border,javax.swing.border.Border)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JTextField].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicate(java.lang.String,javax.swing.JLabel,javax.swing.JLabel,javax.swing.JLabel,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setDivider(javax.swing.JLabel)"
    functionUses: 0
    ICount: 551
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:246,1"
      Dst: "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:246,1"
      Dst: "[javax.swing.border.TitledBorder].<init>(javax.swing.border.Border,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:253,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:252,1"
      Dst: "[javax.swing.BorderFactory].createCompoundBorder(javax.swing.border.Border,javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:255,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:256,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:256,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:260,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:260,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:261,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:266,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:276,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:282,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:283,1"
      Dst: "[javax.swing.JTextField].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:284,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:285,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:288,1"
      Dst: "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:289,1"
      Dst: "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:340,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:341,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:344,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:344,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:344,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:420,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicate(java.lang.String,javax.swing.JLabel,javax.swing.JLabel,javax.swing.JLabel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:422,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setDivider(javax.swing.JLabel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicate(java.lang.String,javax.swing.JLabel,javax.swing.JLabel,javax.swing.JLabel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "javax.swing.JLabel"
    - "javax.swing.JLabel"
    - "javax.swing.JLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateName(java.lang.String,javax.swing.JLabel,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateValue(javax.swing.JLabel,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:442,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateName(java.lang.String,javax.swing.JLabel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:443,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateValue(javax.swing.JLabel,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateName(java.lang.String,javax.swing.JLabel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "javax.swing.JLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:447,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:448,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:449,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:450,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:450,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:452,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:452,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:452,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateValue(javax.swing.JLabel,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.swing.JLabel"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:459,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:459,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:460,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:462,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:462,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:462,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setDivider(javax.swing.JLabel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.JLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:469,1"
      Dst: "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:469,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:150,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:179,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:181,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.JComboBox].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 136
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:132,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:84,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:88,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:97,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:100,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:100,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:100,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:104,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:107,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:112,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:119,1"
      Dst: "[javax.swing.JComboBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:130,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:137,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTree].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].jbInit()"
    - "[javax.swing.ToolTipManager].sharedInstance()"
    - "[javax.swing.ToolTipManager].registerComponent(javax.swing.JComponent)"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:106,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:47,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:49,1"
      Dst: "[javax.swing.JTree].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:51,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:109,1"
      Dst: "[javax.swing.ToolTipManager].sharedInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:109,1"
      Dst: "[javax.swing.ToolTipManager].registerComponent(javax.swing.JComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:111,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[javax.swing.JTree].setRootVisible(boolean)"
    - "[javax.swing.JTree].setShowsRootHandles(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    - "[javax.swing.JTree].setCellRenderer(javax.swing.tree.TreeCellRenderer)"
    - "[javax.swing.JTree].getSelectionModel()"
    - "[javax.swing.tree.TreeSelectionModel].setSelectionMode(int)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    - "[javax.swing.JTree].addTreeSelectionListener(javax.swing.event.TreeSelectionListener)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:116,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:117,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:118,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:119,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:120,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:121,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:123,1"
      Dst: "[javax.swing.JTree].setRootVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:124,1"
      Dst: "[javax.swing.JTree].setShowsRootHandles(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:125,1"
      Dst: "[javax.swing.JTree].setCellRenderer(javax.swing.tree.TreeCellRenderer)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:126,1"
      Dst: "[javax.swing.JTree].getSelectionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:126,1"
      Dst: "[javax.swing.tree.TreeSelectionModel].setSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:129,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:139,1"
      Dst: "[javax.swing.JTree].addTreeSelectionListener(javax.swing.event.TreeSelectionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.tree.DefaultTreeCellRenderer].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer:75,1"
      Dst: "[javax.swing.tree.DefaultTreeCellRenderer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer:66,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer:67,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$GeometryFunctionRenderer:67,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:129,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$2:139,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getFunctionRegistry()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].populate(org.locationtech.jtstest.function.DoubleKeyMap)"
    - "[java.awt.GridLayout].setRows(int)"
    - "[java.awt.GridLayout].setColumns(int)"
    - "[java.awt.FlowLayout].<init>()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - "[javax.swing.DefaultComboBoxModel].<init>(java.lang.Object[])"
    - "[javax.swing.JComboBox].setModel(javax.swing.ComboBoxModel)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].initLabels(javax.swing.JLabel[])"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[javax.swing.BorderFactory].createEmptyBorder()"
    - "[javax.swing.AbstractButton].setContentAreaFilled(boolean)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.JComponent].setVisible(boolean)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$4].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].addGeometryFunctionListener(org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].hideAllParams(javax.swing.JComponent[],javax.swing.JLabel[])"
    functionUses: 0
    ICount: 252
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:142,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getFunctionRegistry()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:145,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].populate(org.locationtech.jtstest.function.DoubleKeyMap)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:148,1"
      Dst: "[java.awt.GridLayout].setRows(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:149,1"
      Dst: "[java.awt.GridLayout].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:150,1"
      Dst: "[java.awt.FlowLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:153,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:154,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:155,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:158,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:158,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:159,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:160,1"
      Dst: "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:164,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:164,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:165,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:166,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:167,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:168,1"
      Dst: "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:174,1"
      Dst: "[javax.swing.DefaultComboBoxModel].<init>(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:175,1"
      Dst: "[javax.swing.JComboBox].setModel(javax.swing.ComboBoxModel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].initLabels(javax.swing.JLabel[])"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:189,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:200,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:201,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:204,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:205,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:228,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:246,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:247,1"
      Dst: "[javax.swing.AbstractButton].setContentAreaFilled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:248,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:255,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:271,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:274,1"
      Dst: "[javax.swing.JComponent].setVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$4].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:295,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].addGeometryFunctionListener(org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:297,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].hideAllParams(javax.swing.JComponent[],javax.swing.JLabel[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getFunctionRegistry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.function.DoubleKeyMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].populate(org.locationtech.jtstest.function.DoubleKeyMap)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.function.DoubleKeyMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].createModel(org.locationtech.jtstest.function.DoubleKeyMap)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].createModel(org.locationtech.jtstest.function.DoubleKeyMap)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:153,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].createModel(org.locationtech.jtstest.function.DoubleKeyMap)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.tree.TreeModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.function.DoubleKeyMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.tree.DefaultMutableTreeNode].<init>()"
    - "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.tree.DefaultMutableTreeNode].<init>(java.lang.Object)"
    - "[javax.swing.tree.DefaultMutableTreeNode].add(javax.swing.tree.MutableTreeNode)"
    - "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    - "[javax.swing.tree.DefaultTreeModel].<init>(javax.swing.tree.TreeNode)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:157,1"
      Dst: "[javax.swing.tree.DefaultMutableTreeNode].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:159,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:160,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:160,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:162,1"
      Dst: "[javax.swing.tree.DefaultMutableTreeNode].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:163,1"
      Dst: "[javax.swing.tree.DefaultMutableTreeNode].add(javax.swing.tree.MutableTreeNode)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:165,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:171,1"
      Dst: "[javax.swing.tree.DefaultTreeModel].<init>(javax.swing.tree.TreeNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    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: "org.locationtech.jtstest.function.DoubleKeyMap:49,1"
      Dst: "[java.util.Map].keySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].values()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DoubleKeyMap:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:60,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:62,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].initLabels(javax.swing.JLabel[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.JLabel[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:306"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:304,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:305,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1:223,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "javax.swing.ImageIcon"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:232,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:233,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:234,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:235,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:235,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:236,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:237,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:238,1"
      Dst: "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$2:231,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JButton"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[javax.swing.AbstractButton].setIconTextGap(int)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:261"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:263"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:255,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:256,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:259,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:260,1"
      Dst: "[javax.swing.AbstractButton].setIconTextGap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:262,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:262,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:263,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:265,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:266,1"
      Dst: "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:239,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$4].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$4:287,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].addGeometryFunctionListener(org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>(int)"
    - "[java.util.Vector].clone()"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:187"
      Branch Sides: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:187,1"
      Dst: "[java.util.Vector].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:188,1"
      Dst: "[java.util.Vector].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:189,1"
      Dst: "[java.util.Vector].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:190,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].hideAllParams(javax.swing.JComponent[],javax.swing.JLabel[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JComponent[]"
    - "javax.swing.JLabel[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setVisible(boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:415,1"
      Dst: "[javax.swing.JComponent].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JRadioButton].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:80,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:60,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:62,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:63,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:66,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:71,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:73,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:76,1"
      Dst: "[javax.swing.JRadioButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:85,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$1].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$2].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$3].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$4].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[javax.swing.AbstractButton].addItemListener(java.awt.event.ItemListener)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$5].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$6].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JTextArea].setFont(java.awt.Font)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$7].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel$8].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JTextField].setFont(java.awt.Font)"
    functionUses: 0
    ICount: 240
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:89,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:90,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$1].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:91,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$2].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$3].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:112,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:114,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$4].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:120,1"
      Dst: "[javax.swing.AbstractButton].addItemListener(java.awt.event.ItemListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$5].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$6].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:143,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:144,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:148,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:149,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:149,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:150,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:154,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:155,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:156,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:159,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:160,1"
      Dst: "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:162,1"
      Dst: "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:163,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:164,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:165,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:174,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:177,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:178,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:178,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:182,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:182,1"
      Dst: "[javax.swing.JTextArea].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:185,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$7].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel$8].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:218,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:219,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:223,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:234,1"
      Dst: "[javax.swing.JTextField].setFont(java.awt.Font)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$1].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$1:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$2].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$2:98,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$3].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$3:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$4].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$4:120,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$5].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$5:127,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$6].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$6:134,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$7].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$7:192,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$8].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$8:200,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.FlowLayout].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:76,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:51,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:54,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:60,1"
      Dst: "[java.awt.FlowLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:63,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:67,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:68,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:81,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getFunctionRegistry()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedScalarFunctions()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].populate(org.locationtech.jtstest.function.DoubleKeyMap)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.GridLayout].setRows(int)"
    - "[java.awt.GridLayout].setColumns(int)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.ScalarFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.ScalarFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].addGeometryFunctionListener(org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener)"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getFunctionRegistry()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:86,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedScalarFunctions()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].populate(org.locationtech.jtstest.function.DoubleKeyMap)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:88,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:93,1"
      Dst: "[java.awt.GridLayout].setRows(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:94,1"
      Dst: "[java.awt.GridLayout].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:96,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:98,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:98,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:99,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:100,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:101,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:102,1"
      Dst: "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:104,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.ScalarFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:116,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.ScalarFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].addGeometryFunctionListener(org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedScalarFunctions()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.function.DoubleKeyMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.ScalarFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.ScalarFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$2:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].<init>(int,int,int)"
    - "[javax.swing.BorderFactory].createBevelBorder(int,java.awt.Color,java.awt.Color,java.awt.Color,java.awt.Color)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[java.awt.Component].addMouseMotionListener(java.awt.event.MouseMotionListener)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$2].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$3].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].addValidPanelListener(org.locationtech.jtstest.testbuilder.event.ValidPanelListener)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$4].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[java.awt.Component].addFocusListener(java.awt.event.FocusListener)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$5].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createBevelBorder(int)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$6].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$7].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JSpinner].getEditor()"
    - "[javax.swing.JSpinner$DefaultEditor].getTextField()"
    - "[javax.swing.JTextField].setColumns(int)"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.Box].createHorizontalGlue()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.Box].createHorizontalStrut(int)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$8].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.GridLayout].<init>(int,int)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[javax.swing.JTabbedPane].<init>()"
    - "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 234
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:213,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:213,1"
      Dst: "[javax.swing.BorderFactory].createBevelBorder(int,java.awt.Color,java.awt.Color,java.awt.Color,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:215,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:217,1"
      Dst: "[java.awt.Component].addMouseMotionListener(java.awt.event.MouseMotionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:228,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:229,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$2].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:230,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:237,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$3].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:237,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].addValidPanelListener(org.locationtech.jtstest.testbuilder.event.ValidPanelListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:244,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$4].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:244,1"
      Dst: "[java.awt.Component].addFocusListener(java.awt.event.FocusListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$5].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:251,1"
      Dst: "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:259,1"
      Dst: "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:259,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:261,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:264,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:268,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:271,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:271,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:272,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:279,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:280,1"
      Dst: "[javax.swing.BorderFactory].createBevelBorder(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:286,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:287,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$6].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:294,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:295,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:300,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$7].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:310,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:311,1"
      Dst: "[javax.swing.JSpinner].getEditor()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:311,1"
      Dst: "[javax.swing.JSpinner$DefaultEditor].getTextField()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:311,1"
      Dst: "[javax.swing.JTextField].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:312,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:313,1"
      Dst: "[javax.swing.Box].createHorizontalGlue()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:313,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:316,1"
      Dst: "[javax.swing.Box].createHorizontalStrut(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$8].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:335,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:336,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:341,1"
      Dst: "[java.awt.GridLayout].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:350,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:353,1"
      Dst: "[javax.swing.JTabbedPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:356,1"
      Dst: "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseMotionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$1:218,1"
      Dst: "[java.awt.event.MouseMotionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$2].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$2:231,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$3].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$3:238,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].addValidPanelListener(org.locationtech.jtstest.testbuilder.event.ValidPanelListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.ValidPanelListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>(int)"
    - "[java.util.Vector].clone()"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:361"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:366"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:362,1"
      Dst: "[java.util.Vector].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:362,1"
      Dst: "[java.util.Vector].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:363,1"
      Dst: "[java.util.Vector].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:364,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$4].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.FocusAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$4:245,1"
      Dst: "[java.awt.event.FocusAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$5].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$5:252,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$6].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    - "javax.swing.JCheckBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$6:289,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$7].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    - "javax.swing.JCheckBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$7:300,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$8].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$8:326,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.Box].createVerticalBox()"
    - "[java.awt.FlowLayout].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JRadioButton].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].initFileDrop(java.awt.Component,int)"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:99,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:59,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:61,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:65,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:74,1"
      Dst: "[javax.swing.Box].createVerticalBox()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:76,1"
      Dst: "[java.awt.FlowLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:77,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:78,1"
      Dst: "[javax.swing.JRadioButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:91,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:92,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:95,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:500,1"
      Dst: "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:104,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].initFileDrop(java.awt.Component,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.border.TitledBorder].<init>(java.lang.String)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.Box].createVerticalBox()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.Box].createVerticalStrut(int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JLabel].setHorizontalTextPosition(int)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JTextArea].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[java.awt.FlowLayout].setVgap(int)"
    - "[java.awt.FlowLayout].setHgap(int)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$5].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$6].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$7].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$8].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$9].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$10].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$11].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$12].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$13].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$14].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    functionUses: 0
    ICount: 337
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:116,1"
      Dst: "[javax.swing.border.TitledBorder].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:118,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:118,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:119,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:120,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:120,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:122,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:123,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:141,1"
      Dst: "[javax.swing.Box].createVerticalBox()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:143,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:144,1"
      Dst: "[javax.swing.Box].createVerticalStrut(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:150,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:152,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:152,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:153,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:154,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:156,1"
      Dst: "[javax.swing.JLabel].setHorizontalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:163,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:163,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:164,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:165,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:166,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:167,1"
      Dst: "[javax.swing.JTextArea].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:169,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:201,1"
      Dst: "[java.awt.FlowLayout].setVgap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:202,1"
      Dst: "[java.awt.FlowLayout].setHgap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:208,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:210,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:211,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:221,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:247,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$5].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:260,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:276,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:300,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:304,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$6].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:310,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$7].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:316,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$8].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$9].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$10].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$11].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:340,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$12].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:346,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$13].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:352,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$14].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:358,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$1:135,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$2:169,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$3:182,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$4:211,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$5].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$5:247,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$6].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$6:305,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$7].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$7:311,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$8].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$8:317,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$9].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$9:323,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$10].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$10:329,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$11].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$11:335,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$12].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$12:341,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$13].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$13:347,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$14].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$14:353,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].initFileDrop(java.awt.Component,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel$15].<init>(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.awt.Component,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:487,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel$15].<init>(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:487,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.awt.Component,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$15].<init>(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$15:487,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.awt.Component,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.io.PrintStream,java.awt.Component,javax.swing.border.Border,boolean,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:80,1"
      Dst: "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.io.PrintStream,java.awt.Component,javax.swing.border.Border,boolean,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.io.PrintStream,java.awt.Component,javax.swing.border.Border,boolean,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.io.PrintStream"
    - "java.awt.Component"
    - "javax.swing.border.Border"
    - "boolean"
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].supportsDnD()"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].<init>(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.Component,javax.swing.border.Border,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].makeDropTarget(java.io.PrintStream,java.awt.Component,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:265,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].supportsDnD()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].<init>(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.Component,javax.swing.border.Border,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:386,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].makeDropTarget(java.io.PrintStream,java.awt.Component,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:389,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].supportsDnD()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Boolean].booleanValue()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:400,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:406,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:408,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].<init>(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.Component,javax.swing.border.Border,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    - "java.io.PrintStream"
    - "java.awt.Component"
    - "javax.swing.border.Border"
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:270,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].makeDropTarget(java.io.PrintStream,java.awt.Component,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.PrintStream"
    - "java.awt.Component"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.dnd.DropTarget].<init>()"
    - "[java.awt.dnd.DropTarget].addDropTargetListener(java.awt.dnd.DropTargetListener)"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$2].<init>(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.Component)"
    - "[java.awt.Component].addHierarchyListener(java.awt.event.HierarchyListener)"
    - "[java.awt.Component].getParent()"
    - "[java.awt.dnd.DropTarget].<init>(java.awt.Component,java.awt.dnd.DropTargetListener)"
    - "[java.awt.Container].getComponents()"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].makeDropTarget(java.io.PrintStream,java.awt.Component,boolean)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:445"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:444"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:456"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:456"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:418,1"
      Dst: "[java.awt.dnd.DropTarget].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:420,1"
      Dst: "[java.awt.dnd.DropTarget].addDropTargetListener(java.awt.dnd.DropTargetListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:423,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:424,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:428,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$2].<init>(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:428,1"
      Dst: "[java.awt.Component].addHierarchyListener(java.awt.event.HierarchyListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:442,1"
      Dst: "[java.awt.Component].getParent()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:443,1"
      Dst: "[java.awt.dnd.DropTarget].<init>(java.awt.Component,java.awt.dnd.DropTargetListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:451,1"
      Dst: "[java.awt.Container].getComponents()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:455,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].makeDropTarget(java.io.PrintStream,java.awt.Component,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.PrintStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:493,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$2].<init>(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.Component)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    - "java.io.PrintStream"
    - "java.awt.Component"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$2:429,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:60,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:64,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.text.JTextComponent].getDocument()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$1].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[javax.swing.text.Document].addDocumentListener(javax.swing.event.DocumentListener)"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$2].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$3].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$4].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$5].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$6].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$7].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$8].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$9].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$10].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JRadioButton].<init>()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 168
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:70,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:70,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:72,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:75,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:76,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:77,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:80,1"
      Dst: "[javax.swing.text.JTextComponent].getDocument()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:80,1"
      Dst: "[javax.swing.text.Document].addDocumentListener(javax.swing.event.DocumentListener)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:107,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:108,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:108,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:109,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:109,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:114,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:115,1"
      Dst: "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:116,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:116,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$2].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$3].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$4].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$5].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$6].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:181,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:182,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:183,1"
      Dst: "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$7].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:196,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$8].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:203,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$9].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$10].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:221,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:222,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:223,1"
      Dst: "[javax.swing.JRadioButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:225,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:226,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:230,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:231,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:235,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:236,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:237,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:80,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$2].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$2:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$3].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$3:132,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$4].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$4:139,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$5].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:146,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$6].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$6:159,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$7].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$7:191,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:243,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:244,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:245,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:247,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$8].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$8:198,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$9].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$9:205,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$10].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$10:212,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:38,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:41,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].<init>()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$1].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$2].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$3].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$4].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$5].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$6].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$7].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$8].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$9].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    functionUses: 0
    ICount: 125
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:64,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:64,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:67,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:67,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:68,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$1].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$2].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$3].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$4].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$5].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:96,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:96,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:97,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:98,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:99,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:101,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:104,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:105,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:106,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$6].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$7].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$8].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:136,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:137,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$9].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:138,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:145,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:150,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTree].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.tree.DefaultMutableTreeNode].<init>(java.lang.Object)"
    - "[javax.swing.tree.DefaultTreeModel].<init>(javax.swing.tree.TreeNode)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].initUI()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:68,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:43,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:44,1"
      Dst: "[javax.swing.JTree].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:45,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:70,1"
      Dst: "[javax.swing.tree.DefaultMutableTreeNode].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:70,1"
      Dst: "[javax.swing.tree.DefaultTreeModel].<init>(javax.swing.tree.TreeNode)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:70,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].initUI()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:75,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].initUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[javax.swing.JTree].setRootVisible(boolean)"
    - "[javax.swing.JTree].setShowsRootHandles(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$GeometryTreeCellRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - "[javax.swing.JTree].setCellRenderer(javax.swing.tree.TreeCellRenderer)"
    - "[javax.swing.JTree].getSelectionModel()"
    - "[javax.swing.tree.TreeSelectionModel].setSelectionMode(int)"
    - "[javax.swing.JTree].setToggleClickCount(int)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - "[javax.swing.JTree].addTreeSelectionListener(javax.swing.event.TreeSelectionListener)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:80,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:81,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:82,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:83,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:84,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:85,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:87,1"
      Dst: "[javax.swing.JTree].setRootVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:88,1"
      Dst: "[javax.swing.JTree].setShowsRootHandles(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$GeometryTreeCellRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:89,1"
      Dst: "[javax.swing.JTree].setCellRenderer(javax.swing.tree.TreeCellRenderer)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:90,1"
      Dst: "[javax.swing.JTree].getSelectionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:90,1"
      Dst: "[javax.swing.tree.TreeSelectionModel].setSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:93,1"
      Dst: "[javax.swing.JTree].setToggleClickCount(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:96,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:110,1"
      Dst: "[javax.swing.JTree].addTreeSelectionListener(javax.swing.event.TreeSelectionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$GeometryTreeCellRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$GeometryTreeCellRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.tree.DefaultTreeCellRenderer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$GeometryTreeCellRenderer:49,1"
      Dst: "[javax.swing.tree.DefaultTreeCellRenderer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:96,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$2:110,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$1].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$1:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$2].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$2:75,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$3].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$3:80,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$4].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$4:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$5].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$5:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$6].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$6:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$7].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$7:121,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$8].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$8:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$9].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$9:138,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.DefaultListModel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JList].<init>(javax.swing.ListModel)"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel,org.locationtech.jtstest.testbuilder.TestListPanel$1)"
    - "[javax.swing.JList].setCellRenderer(javax.swing.ListCellRenderer)"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].registerListSelectionListener()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:127,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:39,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:40,1"
      Dst: "[javax.swing.DefaultListModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:41,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:42,1"
      Dst: "[javax.swing.JList].<init>(javax.swing.ListModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:131,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel,org.locationtech.jtstest.testbuilder.TestListPanel$1)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:133,1"
      Dst: "[javax.swing.JList].setCellRenderer(javax.swing.ListCellRenderer)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].registerListSelectionListener()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JList].setSelectionMode(int)"
    - "[javax.swing.JList].setSelectionBackground(java.awt.Color)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:138,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:139,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:140,1"
      Dst: "[javax.swing.JList].setSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:141,1"
      Dst: "[javax.swing.JList].setSelectionBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:142,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:143,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel,org.locationtech.jtstest.testbuilder.TestListPanel$1)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestListPanel"
    - "org.locationtech.jtstest.testbuilder.TestListPanel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer:45,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer:45,1"
      Dst: "[javax.swing.JLabel].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].registerListSelectionListener()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JList].getSelectionModel()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel$1].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    - "[javax.swing.ListSelectionModel].addListSelectionListener(javax.swing.event.ListSelectionListener)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:147,1"
      Dst: "[javax.swing.JList].getSelectionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel$1].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:147,1"
      Dst: "[javax.swing.ListSelectionModel].addListSelectionListener(javax.swing.event.ListSelectionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel$1].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel$1:147,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.Box].createVerticalBox()"
    - "[javax.swing.JTabbedPane].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:68,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:54,1"
      Dst: "[javax.swing.Box].createVerticalBox()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:55,1"
      Dst: "[javax.swing.JTabbedPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:72,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].<init>()"
    - "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:78,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:79,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:79,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:81,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:84,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:86,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:86,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:88,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:90,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:91,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:91,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:92,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:92,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:104,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:156,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:164,1"
      Dst: "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$1:99,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$2:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$3:117,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$4:125,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$5:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:142,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:88,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:93,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].stylePanel()"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:138,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:138,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:139,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:139,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].stylePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:147,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:157,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:158,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:159,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].stylePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "javax.swing.JPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.GridBagLayout].<init>()"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[javax.swing.Box].createVerticalGlue()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.Box$Filler].<init>(java.awt.Dimension,java.awt.Dimension,java.awt.Dimension)"
    - "[javax.swing.JTextField].<init>()"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent[])"
    - "[javax.swing.text.JTextComponent].getDocument()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.text.Document].addDocumentListener(javax.swing.event.DocumentListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.JComboBox].<init>(java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.JComboBox].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createSynchButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.SpinnerNumberModel].<init>(double,double,double,double)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$13].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createOpacitySlider(javax.swing.event.ChangeListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$14].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$15].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$16].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$17].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$18].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$19].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$20].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$21].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$22].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$23].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$24].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$25].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$26].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$27].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$28].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionUses: 0
    ICount: 376
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:164,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:165,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:165,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:168,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:169,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:171,1"
      Dst: "[javax.swing.Box].createVerticalGlue()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:171,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:174,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:177,1"
      Dst: "[javax.swing.Box$Filler].<init>(java.awt.Dimension,java.awt.Dimension,java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:180,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:181,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:182,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:183,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:185,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:186,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:188,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:189,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent[])"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:199,1"
      Dst: "[javax.swing.text.JTextComponent].getDocument()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:199,1"
      Dst: "[javax.swing.text.Document].addDocumentListener(javax.swing.event.DocumentListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:241,1"
      Dst: "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:242,1"
      Dst: "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:245,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:245,1"
      Dst: "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:256,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:264,1"
      Dst: "[javax.swing.JComboBox].<init>(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:265,1"
      Dst: "[javax.swing.JComboBox].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:282,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:301,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:301,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createSynchButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:312,1"
      Dst: "[javax.swing.SpinnerNumberModel].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$13].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createOpacitySlider(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:343,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$14].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:354,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$15].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$16].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:381,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$17].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:392,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$18].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:403,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$19].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:414,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$20].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:430,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$21].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:438,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$22].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:449,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$23].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:461,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$24].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:475,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$25].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:484,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$26].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:499,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$27].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$28].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$2:189,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "javax.swing.JComponent[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:618"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:616,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:617,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:617,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:619,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:619,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:619,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:622,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "javax.swing.JComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].gbc(int,int,int,double)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:597,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:598,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].gbc(int,int,int,double)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:598,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].gbc(int,int,int,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.GridBagConstraints"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:626,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:626,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:199,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:222,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:232,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JPanel"
    argCount: 4
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.awt.Color"
    - "org.locationtech.jtstest.testbuilder.ColorControl$ColorListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BorderFactory].createBevelBorder(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl$1].<init>(java.awt.Component,java.lang.String,javax.swing.JPanel,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:30,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:31,1"
      Dst: "[javax.swing.BorderFactory].createBevelBorder(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:31,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:33,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:34,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:35,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:36,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:37,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:38,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:39,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl$1].<init>(java.awt.Component,java.lang.String,javax.swing.JPanel,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:40,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl$1].<init>(java.awt.Component,java.lang.String,javax.swing.JPanel,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "javax.swing.JPanel"
    - "org.locationtech.jtstest.testbuilder.ColorControl$ColorListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl$1:40,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:245,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:256,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:265,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:282,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$10:292,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:301,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createSynchButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:575,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:576,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:576,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:577,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:578,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:579,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:580,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:319,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$13].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:328,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createOpacitySlider(javax.swing.event.ChangeListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JSlider"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JSlider].<init>(int,int,int,int)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JSlider].addChangeListener(javax.swing.event.ChangeListener)"
    - "[javax.swing.JSlider].setMajorTickSpacing(int)"
    - "[javax.swing.JSlider].setPaintTicks(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:585,1"
      Dst: "[javax.swing.JSlider].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:586,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:587,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:588,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:589,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:590,1"
      Dst: "[javax.swing.JSlider].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:591,1"
      Dst: "[javax.swing.JSlider].setMajorTickSpacing(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:592,1"
      Dst: "[javax.swing.JSlider].setPaintTicks(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$14].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$14:343,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$15].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:354,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$16].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$16:365,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$17].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:381,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$18].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$18:392,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$19].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$19:403,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$20].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:414,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$21].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:430,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$22].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$22:438,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$23].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$23"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$23:452,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$24].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$24"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$24:461,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$25].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:475,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$26].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:492,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$27].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:502,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$28].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:515,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$1:149,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:45,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:31,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:28,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:32,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:32,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:33,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleEnabled()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleBorderEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getTitleFill()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRow(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendBorderEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getLegendFill()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendStatsEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isBorderEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBorderColor()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isGridEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 174
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:52,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:53,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:53,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:54,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:55,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:57,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:58,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:59,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:60,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleBorderEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getTitleFill()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRow(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendBorderEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getLegendFill()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendStatsEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isBorderEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBorderColor()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isGridEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1:60,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleBorderEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$2:67,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getTitleFill()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRow(java.lang.String,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].label(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRowInternal(java.lang.String,javax.swing.JComponent)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:52,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:53,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:53,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:55,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:55,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:55,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].label(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRowInternal(java.lang.String,javax.swing.JComponent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].label(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JLabel"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:40,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRowInternal(java.lang.String,javax.swing.JComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "javax.swing.JComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].gbc(int,int,int,double)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:45,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].gbc(int,int,int,double)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:46,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].gbc(int,int,int,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.GridBagConstraints"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:80,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$4:86,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendBorderEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getLegendFill()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$6:100,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendStatsEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$7:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isBorderEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBorderColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$10:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isGridEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$11:145,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12:153,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.GridLayout].<init>(int,int)"
    - "[javax.swing.JButton].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:64,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:46,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:47,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:50,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:53,1"
      Dst: "[java.awt.GridLayout].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:56,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:60,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:61,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:68,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[java.awt.GridLayout].<init>(int,int)"
    - "[java.awt.GridLayout].setVgap(int)"
    - "[java.awt.GridLayout].setHgap(int)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[javax.swing.Box].createVerticalBox()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:74,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:76,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:76,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:98,1"
      Dst: "[java.awt.GridLayout].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:99,1"
      Dst: "[java.awt.GridLayout].setVgap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:100,1"
      Dst: "[java.awt.GridLayout].setHgap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:102,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:107,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:109,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:110,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:111,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:119,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:120,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:122,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:124,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:124,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:142,1"
      Dst: "[javax.swing.Box].createVerticalBox()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:143,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:143,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:152,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$1:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$2:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$3:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$4:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:45,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:38,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:39,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:41,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:42,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:49,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:55,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:57,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:58,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:59,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:62,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:62,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:63,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:64,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:66,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:69,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:70,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.StatsPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.StatsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:40,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:36,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:37,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:38,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:44,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.StatsPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.StatsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:50,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:52,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:53,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:54,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:56,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:58,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:58,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:59,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:38,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:32,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:33,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:34,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:36,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:42,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:48,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:50,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:51,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:52,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:54,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:56,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:56,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:57,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Dimension].<init>(int,int)"
    - "[java.awt.Window].setSize(java.awt.Dimension)"
    - "[java.awt.Frame].setTitle(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].getMenuBar()"
    - "[javax.swing.JFrame].setJMenuBar(javax.swing.JMenuBar)"
    - "[javax.swing.JFileChooser].setFileSelectionMode(int)"
    - "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.GridLayout].setRows(int)"
    - "[java.awt.GridLayout].setColumns(int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].getToolBar()"
    - "[javax.swing.JTabbedPane].setTabPlacement(int)"
    - "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - "[javax.swing.JSplitPane].setOrientation(int)"
    - "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JSplitPane].setResizeWeight(double)"
    - "[javax.swing.JSplitPane].setDividerLocation(int)"
    - "[javax.swing.JFrame].getContentPane()"
    functionUses: 0
    ICount: 129
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:410,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:410,1"
      Dst: "[java.awt.Window].setSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:411,1"
      Dst: "[java.awt.Frame].setTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:412,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].getMenuBar()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:412,1"
      Dst: "[javax.swing.JFrame].setJMenuBar(javax.swing.JMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:414,1"
      Dst: "[javax.swing.JFileChooser].setFileSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:415,1"
      Dst: "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:425,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:426,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:427,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:428,1"
      Dst: "[java.awt.GridLayout].setRows(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:429,1"
      Dst: "[java.awt.GridLayout].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:433,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].getToolBar()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:441,1"
      Dst: "[javax.swing.JTabbedPane].setTabPlacement(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:442,1"
      Dst: "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:451,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:452,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:452,1"
      Dst: "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:461,1"
      Dst: "[javax.swing.JSplitPane].setOrientation(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:463,1"
      Dst: "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:463,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:464,1"
      Dst: "[javax.swing.JSplitPane].setResizeWeight(double)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:465,1"
      Dst: "[javax.swing.JSplitPane].setDividerLocation(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:469,1"
      Dst: "[javax.swing.JFrame].getContentPane()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].getMenuBar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "javax.swing.JMenuBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].menuItemCheck(java.lang.String,boolean,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[javax.swing.JMenuItem].<init>()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - "[javax.swing.JMenu].add(javax.swing.JMenuItem)"
    - "[javax.swing.JMenu].addSeparator()"
    - "[javax.swing.JMenuBar].add(javax.swing.JMenu)"
    functionUses: 0
    ICount: 174
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:56,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:57,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].menuItemCheck(java.lang.String,boolean,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:120,1"
      Dst: "[javax.swing.JMenuItem].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:165,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:171,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:180,1"
      Dst: "[javax.swing.JMenu].add(javax.swing.JMenuItem)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:185,1"
      Dst: "[javax.swing.JMenu].addSeparator()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:213,1"
      Dst: "[javax.swing.JMenuBar].add(javax.swing.JMenu)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$1:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$2:66,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$3:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4:80,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$5:87,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].menuItemCheck(java.lang.String,boolean,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JMenuItem"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JCheckBoxMenuItem].<init>()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].createMenuItemSelectable(javax.swing.JMenuItem,java.lang.String,boolean,java.awt.event.ActionListener)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:227,1"
      Dst: "[javax.swing.JCheckBoxMenuItem].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].createMenuItemSelectable(javax.swing.JMenuItem,java.lang.String,boolean,java.awt.event.ActionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].createMenuItemSelectable(javax.swing.JMenuItem,java.lang.String,boolean,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JMenuItem"
    argCount: 4
    argTypes:
    - "javax.swing.JMenuItem"
    - "java.lang.String"
    - "boolean"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:237,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:238,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar:240,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$7:101,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$10:123,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12:137,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13:144,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14:152,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15:159,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16:165,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$17:171,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].getToolBar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JToolBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JToolBar].setFloatable(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createToggleButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$21].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].group(javax.swing.ButtonGroup,javax.swing.AbstractButton[])"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].strut(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].add(javax.swing.JToolBar,java.awt.Component[])"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    functionUses: 0
    ICount: 183
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:98,1"
      Dst: "[javax.swing.JToolBar].setFloatable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:141,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:162,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createToggleButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:234,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$21].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].group(javax.swing.ButtonGroup,javax.swing.AbstractButton[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].strut(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:282,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].add(javax.swing.JToolBar,java.awt.Component[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:303,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:354,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:355,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:355,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:356,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:356,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:357,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:358,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:359,1"
      Dst: "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:360,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:361,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:362,1"
      Dst: "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:363,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:363,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:364,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:365,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:366,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:367,1"
      Dst: "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$2:114,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$4:129,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$5:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6:143,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$7:150,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8:157,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$9:164,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10:171,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$11:178,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12:186,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createToggleButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JToggleButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JToggleButton].<init>()"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:334,1"
      Dst: "[javax.swing.JToggleButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:335,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:335,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:336,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:336,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:337,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:338,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:339,1"
      Dst: "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:340,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:341,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:342,1"
      Dst: "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:343,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:343,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:344,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:345,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:346,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13:193,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$14:200,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15:207,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16:214,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17:221,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18:228,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19:236,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20:244,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$21].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$21:253,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22:263,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].group(javax.swing.ButtonGroup,javax.swing.AbstractButton[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.ButtonGroup"
    - "javax.swing.AbstractButton[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:319,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].strut(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Component"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Box].createHorizontalStrut(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:309,1"
      Dst: "[javax.swing.Box].createHorizontalStrut(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].add(javax.swing.JToolBar,java.awt.Component[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JToolBar"
    - "java.awt.Component[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:314,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$5:452,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$1:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$2:114,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].initFileDrop(java.awt.Component)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Component"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.awt.Component,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.awt.Component,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:28"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:32,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].deactivate()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].activate(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Component].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:491"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:495"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].deactivate()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:493,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].activate(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496,1"
      Dst: "[java.awt.Component].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.CommandPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].execCommand(java.lang.String,java.lang.String,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].expandCommand(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.util.CommandRunner].<init>()"
    - "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.util.CommandRunner].getStderr()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].ui()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].saveCommand(java.lang.String)"
    - "[org.locationtech.jtstest.util.CommandRunner].getStdout()"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].setOutput(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].loadResult(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].logCommand(java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:35,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].expandCommand(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:50,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:52,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:53,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].getStderr()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:58,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].ui()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].saveCommand(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:66,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].getStdout()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].setOutput(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].loadResult(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:72,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].logCommand(java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].expandCommand(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].removeNewline(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].removeNewline(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:102,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:103,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].removeNewline(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replace(char,char)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:133,1"
      Dst: "[java.lang.String].replace(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:496,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:500,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:36,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].toString()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:123,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:128,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:129,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:129,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:227,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:270,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>(int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[org.locationtech.jts.io.OutputStreamOutStream].<init>(java.io.OutputStream)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:285,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:217,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:218,1"
      Dst: "[org.locationtech.jts.io.OutputStreamOutStream].<init>(java.io.OutputStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:291,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.OutputStreamOutStream].<init>(java.io.OutputStream)"
    functionSourceFile: "org.locationtech.jts.io.OutputStreamOutStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OutputStreamOutStream:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[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)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:303,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "org.locationtech.jts.io.WKBWriter:304,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:309,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].writePoint(org.locationtech.jts.geom.Point,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeGeometryCollection(int,org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:334"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:333"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:336"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:341"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:322,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writePoint(org.locationtech.jts.geom.Point,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:325,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:327,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:329,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeGeometryCollection(int,org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:341,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 16
  - functionName: "[org.locationtech.jts.io.WKBWriter].writePoint(org.locationtech.jts.geom.Point,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.io.WKBWriter].writeNaNs(int,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,boolean,org.locationtech.jts.io.OutStream)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:352"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:347,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:348,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:349,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKBWriter:349,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKBWriter:351,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeNaNs(int,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:353,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,boolean,org.locationtech.jts.io.OutStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:401"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:400"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:402,1"
      Dst: "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:407"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:410"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:409"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:408"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:415"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:414"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:411,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:413,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderValues].putInt(int,byte[],int)"
    - "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:419,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].putInt(int,byte[],int)"
    - Src: "org.locationtech.jts.io.WKBWriter:420,1"
      Dst: "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].putInt(int,byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:49"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeNaNs(int,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderValues].putDouble(double,byte[],int)"
    - "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:460"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:458,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].putDouble(double,byte[],int)"
    - Src: "org.locationtech.jts.io.WKBWriter:459,1"
      Dst: "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].putDouble(double,byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    - "[org.locationtech.jts.io.ByteOrderValues].putLong(long,byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderValues:114,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    - Src: "org.locationtech.jts.io.ByteOrderValues:115,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].putLong(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].putLong(long,byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:94"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,boolean,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "boolean"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.io.OutStream)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:431"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:427,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKBWriter:427,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:430,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.io.OutStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.io.ByteOrderValues].putDouble(double,byte[],int)"
    - "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:449"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:437,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:437,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].putDouble(double,byte[],int)"
    - Src: "org.locationtech.jts.io.WKBWriter:438,1"
      Dst: "[org.locationtech.jts.io.OutStream].write(byte[],int)"
    - Src: "org.locationtech.jts.io.WKBWriter:439,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:446,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.io.WKBWriter:447,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,boolean,org.locationtech.jts.io.OutStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:360,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:361,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:362,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKBWriter:362,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,boolean,org.locationtech.jts.io.OutStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,boolean,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:373"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:379"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:367,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:368,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:370,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.io.WKBWriter:371,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:374,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.WKBWriter:375,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.WKBWriter:375,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKBWriter:375,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,boolean,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:377,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].writeGeometryCollection(int,org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.io.OutStream)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.GeometryCollection"
    - "org.locationtech.jts.io.OutStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:385,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeByteOrder(org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:386,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeGeometryType(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:387,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKBWriter:387,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].writeInt(int,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:391,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:391,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:196,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.io.WKBWriter:202,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    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: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:208,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:208,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:208,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:208,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBWriter:208,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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: "org.locationtech.jtstest.util.CommandRunner:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].exec(java.lang.String[])"
    - "[java.lang.String].getBytes()"
    - "[java.lang.Process].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].flush()"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Process].getInputStream()"
    - "[org.locationtech.jtstest.util.StreamGrabber].<init>(java.io.InputStream)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].start()"
    - "[java.lang.Process].getErrorStream()"
    - "[java.lang.Process].waitFor()"
    - "[java.lang.Thread].join()"
    - "[org.locationtech.jtstest.util.StreamGrabber].getOutput()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.CommandRunner:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.CommandRunner:45,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:47,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:47,1"
      Dst: "[java.lang.Runtime].exec(java.lang.String[])"
    - Src: "org.locationtech.jtstest.util.CommandRunner:54,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:56,1"
      Dst: "[java.lang.Process].getOutputStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:57,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "org.locationtech.jtstest.util.CommandRunner:58,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:59,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:62,1"
      Dst: "[java.lang.Process].getInputStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:62,1"
      Dst: "[org.locationtech.jtstest.util.StreamGrabber].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:63,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:64,1"
      Dst: "[java.lang.Thread].start()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:68,1"
      Dst: "[java.lang.Process].getErrorStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:72,1"
      Dst: "[java.lang.Process].waitFor()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:73,1"
      Dst: "[java.lang.Thread].join()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:76,1"
      Dst: "[org.locationtech.jtstest.util.StreamGrabber].getOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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.String].toLowerCase()"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.CommandRunner:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.CommandRunner:90,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:91,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:91,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.StreamGrabber].<init>(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.util.StreamGrabber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.StreamGrabber:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.util.StreamGrabber:21,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.StreamGrabber].getOutput()"
    functionSourceFile: "org.locationtech.jtstest.util.StreamGrabber"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.StreamGrabber:28,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].getStderr()"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].ui()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.CommandPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].saveCommand(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel:341"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:341,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:342,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].getStdout()"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    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.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:137,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].setOutput(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setCaretPosition(int)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:317,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:319,1"
      Dst: "[javax.swing.text.JTextComponent].setCaretPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:320,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].loadResult(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].setStrict(boolean)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].showError(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:142,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:142,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:143,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:143,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:144,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].setStrict(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:147,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].showError(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:102,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].setStrict(boolean)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:105,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:106,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:107,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:109,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:110,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:112,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:113,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:115,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isHex(java.lang.String,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:42,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isHex(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isHex(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isHexDigit(char)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:67,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:68,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:69,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isHexDigit(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isHexDigit(char)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].isDigit(char)"
    - "[java.lang.Character].toLowerCase(char)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:77,1"
      Dst: "[java.lang.Character].isDigit(char)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:78,1"
      Dst: "[java.lang.Character].toLowerCase(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:134,1"
      Dst: "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:135,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:135,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:136,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:138,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:139,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:141,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:141,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.ByteOrderDataInStream].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:141,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:132,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:143,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.WKBReader:144,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].<init>()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.io.WKBReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileReader].<init>(java.io.File)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    - "[java.io.BufferedReader].close()"
    - "[java.io.Reader].close()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:115,1"
      Dst: "[java.io.FileReader].<init>(java.io.File)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:119,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:121,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:123,1"
      Dst: "[java.io.BufferedReader].close()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:126,1"
      Dst: "[java.io.Reader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.io.WKBHexFileReader].isAtEndOfFile(java.io.BufferedReader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].isAtLimit(java.util.List)"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jts.io.WKBReader].hexToBytes(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].read(byte[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:132,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:133,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].isAtEndOfFile(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:133,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].isAtLimit(java.util.List)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:134,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:134,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:135,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:137,1"
      Dst: "[org.locationtech.jts.io.WKBReader].hexToBytes(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:137,1"
      Dst: "[org.locationtech.jts.io.WKBReader].read(byte[])"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:139,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].isAtEndOfFile(java.io.BufferedReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].mark(int)"
    - "[java.io.StreamTokenizer].<init>(java.io.Reader)"
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.io.BufferedReader].reset()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:160,1"
      Dst: "[java.io.BufferedReader].mark(int)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:162,1"
      Dst: "[java.io.StreamTokenizer].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:163,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:168,1"
      Dst: "[java.io.BufferedReader].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].isAtLimit(java.util.List)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:148,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKBReader].hexToBytes(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[org.locationtech.jts.io.WKBReader].hexToInt(char)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:89,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.WKBReader:95,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:97,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.io.WKBReader:97,1"
      Dst: "[org.locationtech.jts.io.WKBReader].hexToInt(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.WKBReader].hexToInt(char)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].digit(char,int)"
    - "[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)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:107,1"
      Dst: "[java.lang.Character].digit(char,int)"
    - Src: "org.locationtech.jts.io.WKBReader:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:109,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.io.WKBReader:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBReader:109,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBReader].read(byte[])"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteArrayInStream].<init>(byte[])"
    - "[org.locationtech.jts.io.WKBReader].read(org.locationtech.jts.io.InStream,int)"
    - "[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: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:159,1"
      Dst: "[org.locationtech.jts.io.ByteArrayInStream].<init>(byte[])"
    - Src: "org.locationtech.jts.io.WKBReader:159,1"
      Dst: "[org.locationtech.jts.io.WKBReader].read(org.locationtech.jts.io.InStream,int)"
    - Src: "org.locationtech.jts.io.WKBReader:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:162,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.WKBReader:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBReader:162,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.io.ByteArrayInStream].<init>(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteArrayInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.ByteArrayInStream].setBytes(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteArrayInStream:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.ByteArrayInStream:35,1"
      Dst: "[org.locationtech.jts.io.ByteArrayInStream].setBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteArrayInStream].setBytes(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteArrayInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].read(org.locationtech.jts.io.InStream,int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.InStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].setInStream(org.locationtech.jts.io.InStream)"
    - "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:190,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].setInStream(org.locationtech.jts.io.InStream)"
    - Src: "org.locationtech.jts.io.WKBReader:191,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].setInStream(org.locationtech.jts.io.InStream)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.InStream"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].readByte()"
    - "[org.locationtech.jts.io.ByteOrderDataInStream].setOrder(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.ByteOrderDataInStream].readInt()"
    - "[org.locationtech.jts.io.WKBReader].readPoint()"
    - "[org.locationtech.jts.io.WKBReader].readLineString()"
    - "[org.locationtech.jts.io.WKBReader].readPolygon()"
    - "[org.locationtech.jts.io.WKBReader].readMultiPoint(int)"
    - "[org.locationtech.jts.io.WKBReader].readMultiLineString(int)"
    - "[org.locationtech.jts.io.WKBReader].readMultiPolygon(int)"
    - "[org.locationtech.jts.io.WKBReader].readGeometryCollection(int)"
    - "[org.locationtech.jts.io.WKBReader].setSRID(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 109
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:246"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:245"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:208,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].readByte()"
    - Src: "org.locationtech.jts.io.WKBReader:213,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].setOrder(int)"
    - Src: "org.locationtech.jts.io.WKBReader:221,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:221,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:221,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.WKBReader:221,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBReader:221,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:229,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].readInt()"
    - Src: "org.locationtech.jts.io.WKBReader:261,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readPoint()"
    - Src: "org.locationtech.jts.io.WKBReader:264,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readLineString()"
    - Src: "org.locationtech.jts.io.WKBReader:267,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readPolygon()"
    - Src: "org.locationtech.jts.io.WKBReader:270,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readMultiPoint(int)"
    - Src: "org.locationtech.jts.io.WKBReader:273,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readMultiLineString(int)"
    - Src: "org.locationtech.jts.io.WKBReader:276,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readMultiPolygon(int)"
    - Src: "org.locationtech.jts.io.WKBReader:279,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readGeometryCollection(int)"
    - Src: "org.locationtech.jts.io.WKBReader:284,1"
      Dst: "[org.locationtech.jts.io.WKBReader].setSRID(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 21
    BBCount: 40
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].readByte()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:93,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.InStream].read(byte[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderDataInStream:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderDataInStream:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderDataInStream:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:140,1"
      Dst: "[org.locationtech.jts.io.InStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:142,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    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: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:27,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].setOrder(int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].readInt()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - "[org.locationtech.jts.io.ByteOrderValues].getInt(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:107,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:108,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].getInt(byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:27"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:33"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBReader].readPoint()"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readCoordinateSequence(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[java.lang.Double].isNaN(double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:306"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:305"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:303,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readCoordinateSequence(int)"
    - Src: "org.locationtech.jts.io.WKBReader:305,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.io.WKBReader:305,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.WKBReader:305,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.io.WKBReader:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.io.WKBReader:308,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBReader].readCoordinateSequence(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.io.WKBReader].readCoordinate()"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:399"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:395,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - Src: "org.locationtech.jts.io.WKBReader:396,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.io.WKBReader:400,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readCoordinate()"
    - Src: "org.locationtech.jts.io.WKBReader:402,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKBReader].readCoordinate()"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].readDouble()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:440"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:436"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:434,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].readDouble()"
    - Src: "org.locationtech.jts.io.WKBReader:434,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].readDouble()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - "[org.locationtech.jts.io.ByteOrderValues].getDouble(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:135,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:136,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].getDouble(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].getDouble(byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderValues:108,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    - Src: "org.locationtech.jts.io.ByteOrderValues:109,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 97
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readLineString()"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].readCoordinateSequenceLineString(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:313,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:314,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readCoordinateSequenceLineString(int)"
    - Src: "org.locationtech.jts.io.WKBReader:315,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].readInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:196,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].readInt()"
    - Src: "org.locationtech.jts.io.WKBReader:198,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:198,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:198,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBReader:198,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBReader].readCoordinateSequenceLineString(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readCoordinateSequence(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].extend(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:411"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:411"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:411"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:413"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:410,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readCoordinateSequence(int)"
    - Src: "org.locationtech.jts.io.WKBReader:412,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKBReader:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].extend(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].extend(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:156,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:156,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:157,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:158,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:71,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readPolygon()"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.io.WKBReader].readLinearRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:336"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:335"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:327,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:334,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.io.WKBReader:336,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readLinearRing()"
    - Src: "org.locationtech.jts.io.WKBReader:340,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readLinearRing()"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].readCoordinateSequenceRing(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:320,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:321,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readCoordinateSequenceRing(int)"
    - Src: "org.locationtech.jts.io.WKBReader:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readCoordinateSequenceRing(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readCoordinateSequence(int)"
    - "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:420"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:419"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:420"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:418,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readCoordinateSequence(int)"
    - Src: "org.locationtech.jts.io.WKBReader:420,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.WKBReader:421,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:105,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:111,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:134,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:136,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:146,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:147,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readMultiPoint(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:345,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:348,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - Src: "org.locationtech.jts.io.WKBReader:350,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:353,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readMultiLineString(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:358,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:361,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - Src: "org.locationtech.jts.io.WKBReader:363,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:366,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readMultiPolygon(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:380"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:379"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBReader:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:371,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:375,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - Src: "org.locationtech.jts.io.WKBReader:377,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:380,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].readGeometryCollection(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:389"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:385,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readNumField(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBReader:388,1"
      Dst: "[org.locationtech.jts.io.WKBReader].readGeometry(int)"
    - Src: "org.locationtech.jts.io.WKBReader:390,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBReader].setSRID(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBReader:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBReader:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBReader:297"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:297,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:46,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.Throwable].getMessage()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:134,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:134,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:137,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:137,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    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: "org.locationtech.jts.io.gml2.GMLReader:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLReader:89,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:89,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    - "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLHandler].<init>(org.locationtech.jts.geom.GeometryFactory,org.xml.sax.ErrorHandler)"
    - "[org.xml.sax.InputSource].<init>(java.io.Reader)"
    - "[javax.xml.parsers.SAXParser].parse(org.xml.sax.InputSource,org.xml.sax.helpers.DefaultHandler)"
    - "[org.locationtech.jts.io.gml2.GMLHandler].getGeometry()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLReader:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLReader:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLReader:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLReader:104,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:106,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:107,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:109,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:112,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:114,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLHandler].<init>(org.locationtech.jts.geom.GeometryFactory,org.xml.sax.ErrorHandler)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:115,1"
      Dst: "[org.xml.sax.InputSource].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:115,1"
      Dst: "[javax.xml.parsers.SAXParser].parse(org.xml.sax.InputSource,org.xml.sax.helpers.DefaultHandler)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:117,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLHandler].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLHandler].<init>(org.locationtech.jts.geom.GeometryFactory,org.xml.sax.ErrorHandler)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.xml.sax.ErrorHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - "[java.util.Stack].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLHandler$Handler].<init>(org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy,org.xml.sax.Attributes)"
    - "[java.util.Stack].push(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:131,1"
      Dst: "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:111,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:134,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLHandler$Handler].<init>(org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy,org.xml.sax.Attributes)"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:134,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLHandler$Handler].<init>(org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy,org.xml.sax.Attributes)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy"
    - "org.xml.sax.Attributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.xml.sax.helpers.AttributesImpl].<init>(org.xml.sax.Attributes)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLHandler$Handler:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:71,1"
      Dst: "[org.xml.sax.helpers.AttributesImpl].<init>(org.xml.sax.Attributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLHandler].getGeometry()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Stack].peek()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[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: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLHandler:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLHandler:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:165,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:166,1"
      Dst: "[java.util.Stack].peek()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:167,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:168,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:170,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:169,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:172,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:172,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:173,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:173,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler:173,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:50,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:122,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:122,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:125,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:125,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:34,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollection(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:45,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:46,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollection(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:48,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:95,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollection(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollectionList(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:86,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollectionList(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollectionList(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].compile(java.lang.String)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group()"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isGeometry(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:65,1"
      Dst: "[java.util.regex.Pattern].compile(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:66,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:67,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:69,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:71,1"
      Dst: "[java.util.regex.Matcher].group()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:72,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isGeometry(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:73,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:73,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isGeometry(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:91,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:53,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.io.Reader)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:94,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:94,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.io.Reader)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].<init>()"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.Exception)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].getGeometryFactory(java.util.Map)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].create(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:113,1"
      Dst: "[org.json.simple.parser.JSONParser].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:115,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:118,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:120,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.Exception)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:127,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].getGeometryFactory(java.util.Map)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:132,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].create(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.json.simple.parser.JSONParser].<init>()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.parser.JSONParser:34,1"
      Dst: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuffer].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:281,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.parser.Yylex:267,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:92,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - "[java.util.LinkedList].<init>()"
    - "[org.json.simple.parser.JSONParser].nextToken()"
    - "[java.lang.Integer].<init>(int)"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    - "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    - "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    - "[java.util.LinkedList].removeFirst()"
    - "[org.json.simple.parser.JSONParser].getPosition()"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[java.util.LinkedList].size()"
    - "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - "[java.util.LinkedList].getFirst()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 201
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:143"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:146"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:145"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:153"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:164"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:170"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:169"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:224"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:230"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:229"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:256"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:259"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:258"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:259"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:118"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:112,1"
      Dst: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:113,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.json.simple.parser.JSONParser:118,1"
      Dst: "[org.json.simple.parser.JSONParser].nextToken()"
    - Src: "org.json.simple.parser.JSONParser:124,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.json.simple.parser.JSONParser:124,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:130,1"
      Dst: "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:135,1"
      Dst: "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:144,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.json.simple.parser.JSONParser:146,1"
      Dst: "[org.json.simple.parser.JSONParser].getPosition()"
    - Src: "org.json.simple.parser.JSONParser:146,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:164,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:167,1"
      Dst: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - Src: "org.json.simple.parser.JSONParser:186,1"
      Dst: "[java.util.LinkedList].getFirst()"
    - Src: "org.json.simple.parser.JSONParser:187,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:221,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 23
    BBCount: 43
  - functionName: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    - "[org.json.simple.parser.JSONParser].reset()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:63,1"
      Dst: "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:64,1"
      Dst: "[org.json.simple.parser.JSONParser].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].reset()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].nextToken()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].yylex()"
    - "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:270"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:272"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:269,1"
      Dst: "[org.json.simple.parser.Yylex].yylex()"
    - Src: "org.json.simple.parser.JSONParser:271,1"
      Dst: "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.json.simple.parser.Yylex].yylex()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.json.simple.parser.Yytoken"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].zzRefill()"
    - "[org.json.simple.parser.Yylex].yytext()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].delete(int,int)"
    - "[org.json.simple.parser.Yylex].yybegin(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Double].valueOf(java.lang.String)"
    - "[org.json.simple.parser.Yylex].yycharat(int)"
    - "[java.lang.Character].<init>(char)"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    - "[java.lang.Long].valueOf(java.lang.String)"
    - "[org.json.simple.parser.Yylex].zzScanError(int)"
    functionUses: 0
    ICount: 189
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:531"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:533"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:532"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:533"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:539"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:538"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:547"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:552"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:551"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:556"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:557"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:556"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:560"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:566"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:565"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:563"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:566"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:565"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:572"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:570"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:569"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:676"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:681"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:680"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:676"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:681"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:680"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:541,1"
      Dst: "[org.json.simple.parser.Yylex].zzRefill()"
    - Src: "org.json.simple.parser.Yylex:574,1"
      Dst: "[org.json.simple.parser.Yylex].yytext()"
    - Src: "org.json.simple.parser.Yylex:574,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:578,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "org.json.simple.parser.Yylex:578,1"
      Dst: "[java.lang.StringBuffer].delete(int,int)"
    - Src: "org.json.simple.parser.Yylex:578,1"
      Dst: "[org.json.simple.parser.Yylex].yybegin(int)"
    - Src: "org.json.simple.parser.Yylex:582,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.parser.Yylex:586,1"
      Dst: "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    - Src: "org.json.simple.parser.Yylex:590,1"
      Dst: "[java.lang.Boolean].valueOf(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:598,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.json.simple.parser.Yylex:606,1"
      Dst: "[java.lang.Double].valueOf(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:610,1"
      Dst: "[org.json.simple.parser.Yylex].yycharat(int)"
    - Src: "org.json.simple.parser.Yylex:610,1"
      Dst: "[java.lang.Character].<init>(char)"
    - Src: "org.json.simple.parser.Yylex:610,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.Yylex:643,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.json.simple.parser.Yylex:643,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    - Src: "org.json.simple.parser.Yylex:660,1"
      Dst: "[java.lang.Long].valueOf(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:681,1"
      Dst: "[org.json.simple.parser.Yylex].zzScanError(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 44
    BBCount: 71
  - functionName: "[org.json.simple.parser.Yylex].zzRefill()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.io.Reader].read(char[],int,int)"
    - "[java.io.Reader].read()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:324"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:337"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:336"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:337"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:344"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:348"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:353"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:352"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:353"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:364"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:363"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:355"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:358"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:325,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.json.simple.parser.Yylex:345,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    - Src: "org.json.simple.parser.Yylex:354,1"
      Dst: "[java.io.Reader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.json.simple.parser.Yylex].yytext()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:423,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yybegin(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    functionSourceFile: "org.json.simple.parser.Yytoken"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yytoken:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yycharat(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    functionSourceFile: "org.json.simple.parser.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.ParseException:28,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].zzScanError(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Error].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:474,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONObject].<init>()"
    - "[org.json.simple.parser.ContainerFactory].createObjectContainer()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:275"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:277"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:276"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:279"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:281"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:276,1"
      Dst: "[org.json.simple.JSONObject].<init>()"
    - Src: "org.json.simple.parser.JSONParser:277,1"
      Dst: "[org.json.simple.parser.ContainerFactory].createObjectContainer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.json.simple.JSONObject].<init>()"
    functionSourceFile: "org.json.simple.JSONObject"
    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: "org.json.simple.JSONObject:24,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONArray].<init>()"
    - "[org.json.simple.parser.ContainerFactory].creatArrayContainer()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:285"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:287"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:286"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:289"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:291"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:286,1"
      Dst: "[org.json.simple.JSONArray].<init>()"
    - Src: "org.json.simple.parser.JSONParser:287,1"
      Dst: "[org.json.simple.parser.ContainerFactory].creatArrayContainer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.json.simple.JSONArray].<init>()"
    functionSourceFile: "org.json.simple.JSONArray"
    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: "org.json.simple.JSONArray:19,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].getPosition()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].getPosition()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:71,1"
      Dst: "[org.json.simple.parser.Yylex].getPosition()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].getPosition()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.LinkedList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].size()"
    - "[java.util.LinkedList].getFirst()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:39"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:41"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:39,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:41,1"
      Dst: "[java.util.LinkedList].getFirst()"
    - Src: "org.json.simple.parser.JSONParser:42,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:37,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jts.io.ParseException:37,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    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: "org.locationtech.jts.io.ParseException:48,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].getGeometryFactory(java.util.Map)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.Integer].valueOf(java.lang.String)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:464"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:445,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:456,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:458,1"
      Dst: "[java.lang.Integer].valueOf(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:460,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:469,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:472,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:472,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:472,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].create(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createPoint(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createLineString(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createPolygon(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiPoint(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiLineString(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiPolygon(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createGeometryCollection(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeature(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeatureCollection(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:142,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:145,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:149,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:150,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createPoint(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:153,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createLineString(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:156,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createPolygon(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:159,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiPoint(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:162,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiLineString(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:165,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiPolygon(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:168,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createGeometryCollection(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:171,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeature(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:174,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeatureCollection(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:177,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:177,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 22
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createPoint(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinate(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:427,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:429,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinate(java.util.List)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:431,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:434,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinate(java.util.List)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.Number].doubleValue()"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:504"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:510"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:513"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:512"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:513"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:516"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:515"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:504,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:505,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:511,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:511,1"
      Dst: "[java.lang.Number].doubleValue()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:511,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:109,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:112,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createLineString(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:404,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:406,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:408,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:411,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int)"
    - "[java.util.List].get(int)"
    - "[java.lang.Number].doubleValue()"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:483"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:482"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:500"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:499"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:488"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:491"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:490"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:491"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:493"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:494"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:483"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:482"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:483,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:483,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:486,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:489,1"
      Dst: "[java.lang.Number].doubleValue()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:489,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createPolygon(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:369"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:368"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:371"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:384"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:384"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:363,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:365,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:366,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:369,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:371,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:371,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:371,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:373,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:373,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:376,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:376,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:378,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:385,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:388,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiPoint(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:339,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:342,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:344,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:347,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getMeasures()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:442"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:441"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:448"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:440,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:442,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:444,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:446,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:447,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiLineString(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:320"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:307,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:309,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:312,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:312,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:312,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:315,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:315,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:320,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:323,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createMultiPolygon(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:256,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:258,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:261,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:261,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:261,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:263,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:267,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createCoordinateSequence(java.util.List)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:267,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:270,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:274,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:274,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:283,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:288,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:291,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createGeometryCollection(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].create(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:225,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:227,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:230,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:230,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:230,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:232,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].create(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:240,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeature(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].create(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:209,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:210,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].create(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:212,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeatureCollection(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeature(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonReader:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonReader:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:190,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:192,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:194,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:194,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:194,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:195,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].createFeature(java.util.Map,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:199,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:201,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - "[org.locationtech.jts.io.WKTFileReader].setStrictParsing(boolean)"
    - "[org.locationtech.jts.io.WKTFileReader].read()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:120,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:121,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:121,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:122,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].setStrictParsing(boolean)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:123,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:126,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:187,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.WKTReader:190,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.io.WKTReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].setStrictParsing(boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].read()"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileReader].<init>(java.io.File)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader)"
    - "[java.io.BufferedReader].close()"
    - "[java.io.Reader].close()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTFileReader:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:127,1"
      Dst: "[java.io.FileReader].<init>(java.io.File)"
    - Src: "org.locationtech.jts.io.WKTFileReader:131,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTFileReader:133,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKTFileReader:135,1"
      Dst: "[java.io.BufferedReader].close()"
    - Src: "org.locationtech.jts.io.WKTFileReader:138,1"
      Dst: "[java.io.Reader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader,java.util.List)"
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTFileReader:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTFileReader:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:144,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTFileReader:146,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader,java.util.List)"
    - Src: "org.locationtech.jts.io.WKTFileReader:150,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader,java.util.List)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.BufferedReader"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTFileReader].isAtEndOfFile(java.io.BufferedReader)"
    - "[org.locationtech.jts.io.WKTFileReader].isAtLimit(java.util.List)"
    - "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTFileReader:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTFileReader:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTFileReader:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:158,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].isAtEndOfFile(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKTFileReader:158,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].isAtLimit(java.util.List)"
    - Src: "org.locationtech.jts.io.WKTFileReader:159,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTFileReader:161,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.WKTFileReader].isAtEndOfFile(java.io.BufferedReader)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].mark(int)"
    - "[java.io.BufferedReader].read()"
    - "[java.lang.Character].isWhitespace(int)"
    - "[java.io.BufferedReader].reset()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTFileReader:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTFileReader:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:180,1"
      Dst: "[java.io.BufferedReader].mark(int)"
    - Src: "org.locationtech.jts.io.WKTFileReader:181,1"
      Dst: "[java.io.BufferedReader].read()"
    - Src: "org.locationtech.jts.io.WKTFileReader:184,1"
      Dst: "[java.lang.Character].isWhitespace(int)"
    - Src: "org.locationtech.jts.io.WKTFileReader:185,1"
      Dst: "[java.io.BufferedReader].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTFileReader].isAtLimit(java.util.List)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTFileReader:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTFileReader:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:169,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 255
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].createTokenizer(java.io.Reader)"
    - "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:256,1"
      Dst: "[org.locationtech.jts.io.WKTReader].createTokenizer(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTReader:258,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:261,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:261,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.io.WKTReader].createTokenizer(java.io.Reader)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "java.io.StreamTokenizer"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StreamTokenizer].<init>(java.io.Reader)"
    - "[java.io.StreamTokenizer].resetSyntax()"
    - "[java.io.StreamTokenizer].wordChars(int,int)"
    - "[java.io.StreamTokenizer].whitespaceChars(int,int)"
    - "[java.io.StreamTokenizer].commentChar(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:272,1"
      Dst: "[java.io.StreamTokenizer].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTReader:274,1"
      Dst: "[java.io.StreamTokenizer].resetSyntax()"
    - Src: "org.locationtech.jts.io.WKTReader:275,1"
      Dst: "[java.io.StreamTokenizer].wordChars(int,int)"
    - Src: "org.locationtech.jts.io.WKTReader:282,1"
      Dst: "[java.io.StreamTokenizer].whitespaceChars(int,int)"
    - Src: "org.locationtech.jts.io.WKTReader:283,1"
      Dst: "[java.io.StreamTokenizer].commentChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 707
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer,java.lang.String,java.util.EnumSet)"
    - "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    functionUses: 2
    ICount: 26
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:710"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:713"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:712"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:713"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:715"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:714"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:715"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:718"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:717"
        BranchSideFuncs:
        - "readGeometryTaggedText(java.io.StreamTokenizer,java.lang.String,java.util.EnumSet)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:708,1"
      Dst: "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - Src: "org.locationtech.jts.io.WKTReader:709,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:709,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "org.locationtech.jts.io.WKTReader:710,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:711,1"
      Dst: "[java.util.AbstractCollection].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:718,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer,java.lang.String,java.util.EnumSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 628
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 8
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:634"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:636"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:635"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:629,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKTReader:634,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:642,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 654
    functionDepth: 2
    returnType: "org.locationtech.jts.io.ParseException"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[org.locationtech.jts.io.WKTReader].tokenString(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:655"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:657"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:656"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:657"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:660"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:659"
        BranchSideFuncs:
        - "parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
        - "tokenString(java.io.StreamTokenizer)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:656,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:660,1"
      Dst: "[org.locationtech.jts.io.WKTReader].tokenString(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:661,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:661,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:661,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:661,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTReader].tokenString(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 682
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:689,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:689,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:689,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:691,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 672
    functionDepth: 1
    returnType: "org.locationtech.jts.io.ParseException"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.StreamTokenizer].lineno()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:673,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:673,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:673,1"
      Dst: "[java.io.StreamTokenizer].lineno()"
    - Src: "org.locationtech.jts.io.WKTReader:673,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.WKTReader:673,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:673,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer,java.lang.String,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 723
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.lang.String"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextOrdinateFlags(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.io.WKTReader].toDimension(java.util.EnumSet)"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.io.WKTReader].isTypeName(java.io.StreamTokenizer,java.lang.String,java.lang.String)"
    - "[org.locationtech.jts.io.WKTReader].readPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readLinearRingText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readMultiPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readMultiLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readMultiPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readGeometryCollectionText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    - "[java.util.AbstractCollection].size()"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 65
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:724"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:734"
        BranchSideFuncs:
        - "getNextOrdinateFlags(java.io.StreamTokenizer)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:733"
        BranchSideFuncs:
        - "toDimension(java.util.EnumSet)"
        - "create(int,int,int)"
    - Branch String: "org.locationtech.jts.io.WKTReader:734"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:734"
        BranchSideFuncs:
        - "getPrecisionModel()"
        - "getSRID()"
        - "toDimension(java.util.EnumSet)"
        - "create(int,int,int)"
        - "<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:733"
        BranchSideFuncs:
        - "toDimension(java.util.EnumSet)"
        - "create(int,int,int)"
    - Branch String: "org.locationtech.jts.io.WKTReader:741"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:744"
        BranchSideFuncs:
        - "readPointText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:743"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:744"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:747"
        BranchSideFuncs:
        - "readLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:746"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:747"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:750"
        BranchSideFuncs:
        - "readLinearRingText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:749"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:750"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:753"
        BranchSideFuncs:
        - "readPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:752"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:753"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:756"
        BranchSideFuncs:
        - "readMultiPointText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:755"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:756"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:759"
        BranchSideFuncs:
        - "readMultiLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:758"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:759"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:762"
        BranchSideFuncs:
        - "readMultiPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:761"
        BranchSideFuncs:
        - "isTypeName(java.io.StreamTokenizer,java.lang.String,java.lang.String)"
    - Branch String: "org.locationtech.jts.io.WKTReader:762"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:765"
        BranchSideFuncs:
        - "readGeometryCollectionText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:764"
        BranchSideFuncs:
        - "parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:724,1"
      Dst: "[java.util.AbstractCollection].size()"
    - Src: "org.locationtech.jts.io.WKTReader:725,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextOrdinateFlags(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:734,1"
      Dst: "[org.locationtech.jts.io.WKTReader].toDimension(java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:734,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:734,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - Src: "org.locationtech.jts.io.WKTReader:737,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.WKTReader:738,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.io.WKTReader:738,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - Src: "org.locationtech.jts.io.WKTReader:741,1"
      Dst: "[org.locationtech.jts.io.WKTReader].isTypeName(java.io.StreamTokenizer,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:742,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:745,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:748,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readLinearRingText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:751,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:754,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readMultiPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:757,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readMultiLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:760,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readMultiPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:763,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readGeometryCollectionText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:765,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:765,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:765,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:765,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 24
  - functionName: "[org.locationtech.jts.io.WKTReader].getNextOrdinateFlags(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 552
    functionDepth: 5
    returnType: "java.util.EnumSet"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].lookAheadWord(java.io.StreamTokenizer)"
    - "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:560"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:559"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:560"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:564"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:569"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:568"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:553,1"
      Dst: "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - Src: "org.locationtech.jts.io.WKTReader:555,1"
      Dst: "[org.locationtech.jts.io.WKTReader].lookAheadWord(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:555,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "org.locationtech.jts.io.WKTReader:556,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:557,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKTReader:558,1"
      Dst: "[java.util.AbstractCollection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.WKTReader].lookAheadWord(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 581
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - "[java.io.StreamTokenizer].pushBack()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:582,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:583,1"
      Dst: "[java.io.StreamTokenizer].pushBack()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].toDimension(java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:449"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:448"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:449"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:441,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].isTypeName(java.io.StreamTokenizer,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 768
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 8
    ICount: 31
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:769"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:772"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:771"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:773"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:774"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:774"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:773"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:775"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:774"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:773"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:776"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:774"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:773"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:777"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:778"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:782"
        BranchSideFuncs:
        - "parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:781"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:769,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:772,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.WKTReader:772,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.io.WKTReader:775,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:779,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:779,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:779,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:779,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.io.WKTReader].readPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 795
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.WKTReader].getCoordinateSequence(java.io.StreamTokenizer,java.util.EnumSet,int,boolean)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:796,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getCoordinateSequence(java.io.StreamTokenizer,java.util.EnumSet,int,boolean)"
    - Src: "org.locationtech.jts.io.WKTReader:796,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].getCoordinateSequence(java.io.StreamTokenizer,java.util.EnumSet,int,boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 4
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].createCoordinateSequenceEmpty(java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].getCoordinate(java.io.StreamTokenizer,java.util.EnumSet,boolean)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].fixStructure(java.util.List,int,boolean)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 26
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:368"
        BranchSideFuncs:
        - "createCoordinateSequenceEmpty(java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:367"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:371"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:369"
        BranchSideFuncs:
        - "getNextCloserOrComma(java.io.StreamTokenizer)"
        - "getCoordinate(java.io.StreamTokenizer,java.util.EnumSet,boolean)"
    - Branch String: "org.locationtech.jts.io.WKTReader:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:376"
        BranchSideFuncs:
        - "fixStructure(java.util.List,int,boolean)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:375"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:365,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:365,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:366,1"
      Dst: "[org.locationtech.jts.io.WKTReader].createCoordinateSequenceEmpty(java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:368,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:370,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getCoordinate(java.io.StreamTokenizer,java.util.EnumSet,boolean)"
    - Src: "org.locationtech.jts.io.WKTReader:370,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:371,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:374,1"
      Dst: "[org.locationtech.jts.io.WKTReader].fixStructure(java.util.List,int,boolean)"
    - Src: "org.locationtech.jts.io.WKTReader:376,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.WKTReader:377,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 520
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 6
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:522"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:525"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:526"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:529"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:530"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:534"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:538"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:537"
        BranchSideFuncs:
        - "parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:521,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:522,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:535,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:538,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.io.WKTReader].createCoordinateSequenceEmpty(java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 401
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.io.WKTReader].toDimension(java.util.EnumSet)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:401"
        BranchSideFuncs:
        - "toDimension(java.util.EnumSet)"
        - "create(int,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:402,1"
      Dst: "[org.locationtech.jts.io.WKTReader].toDimension(java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:402,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:402,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTReader].getCoordinate(java.io.StreamTokenizer,java.util.EnumSet,boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 304
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].isOpenerNext(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].createCoordinate(java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].getNextNumber(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setOrdinate(int,double)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].setOrdinate(int,double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setOrdinate(int,double)"
    - "[org.locationtech.jts.geom.Coordinate].setOrdinate(int,double)"
    - "[org.locationtech.jts.io.WKTReader].isNumberNext(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloser(java.io.StreamTokenizer)"
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].size()"
    functionUses: 2
    ICount: 48
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:312"
        BranchSideFuncs:
        - "makePrecise(double)"
        - "createCoordinate(java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:320"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:319"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:322"
        BranchSideFuncs:
        - "isNumberNext(java.io.StreamTokenizer)"
    - Branch String: "org.locationtech.jts.io.WKTReader:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:328"
        BranchSideFuncs:
        - "setOrdinate(int,double)"
        - "getNextNumber(java.io.StreamTokenizer)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:328"
        BranchSideFuncs:
        - "setOrdinate(int,double)"
        - "getNextNumber(java.io.StreamTokenizer)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:328"
        BranchSideFuncs:
        - "setOrdinate(int,double)"
        - "getNextNumber(java.io.StreamTokenizer)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:332"
        BranchSideFuncs:
        - "getNextCloser(java.io.StreamTokenizer)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:306,1"
      Dst: "[org.locationtech.jts.io.WKTReader].isOpenerNext(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:307,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKTReader:312,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:313,1"
      Dst: "[org.locationtech.jts.io.WKTReader].createCoordinate(java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:314,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextNumber(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:314,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jts.io.WKTReader:314,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setOrdinate(int,double)"
    - Src: "org.locationtech.jts.io.WKTReader:323,1"
      Dst: "[java.util.AbstractCollection].size()"
    - Src: "org.locationtech.jts.io.WKTReader:323,1"
      Dst: "[org.locationtech.jts.io.WKTReader].isNumberNext(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:329,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloser(java.io.StreamTokenizer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 17
  - functionName: "[org.locationtech.jts.io.WKTReader].isOpenerNext(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 472
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.io.StreamTokenizer].pushBack()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:475"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:472"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:473,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKTReader:474,1"
      Dst: "[java.io.StreamTokenizer].pushBack()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTReader].createCoordinate(java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 335
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:338"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:339"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:338"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:339"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:343"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:336,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:339,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:341,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:343,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:344,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:26,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYM"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYM:45,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:40,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].getNextNumber(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 490
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    - "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:500"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:499"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:491,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKTReader:495,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:500,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:503,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:503,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:503,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:503,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorWithLine(java.io.StreamTokenizer,java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:508,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].setOrdinate(int,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 253
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].setZ(double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setZ(double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[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: 6
    ICount: 19
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:262,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].isNumberNext(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 459
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.io.StreamTokenizer].pushBack()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:462"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:460,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKTReader:461,1"
      Dst: "[java.io.StreamTokenizer].pushBack()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTReader].getNextCloser(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 612
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:614"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:617"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:616"
        BranchSideFuncs:
        - "parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:613,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:614,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:617,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.StreamTokenizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:597"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:598"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:597"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:597"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:600"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:599"
        BranchSideFuncs:
        - "parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:596,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextWord(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:597,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:600,1"
      Dst: "[org.locationtech.jts.io.WKTReader].parseErrorExpected(java.io.StreamTokenizer,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTReader].fixStructure(java.util.List,int,boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.io.WKTReader].isClosed(java.util.List)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:382"
        BranchSideFuncs:
        - "isClosed(java.util.List)"
    - Branch String: "org.locationtech.jts.io.WKTReader:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:386"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:389"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "copy()"
        - "get(int)"
        - "size()"
      - BranchSide: "org.locationtech.jts.io.WKTReader:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:381,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.WKTReader:383,1"
      Dst: "[org.locationtech.jts.io.WKTReader].isClosed(java.util.List)"
    - Src: "org.locationtech.jts.io.WKTReader:384,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.WKTReader:384,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.io.WKTReader:384,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.WKTReader].isClosed(java.util.List)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 391
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:393"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:395"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "get(int)"
        - "size()"
      - BranchSide: "org.locationtech.jts.io.WKTReader:394"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:392,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.WKTReader:394,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.WKTReader:394,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 810
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.WKTReader].getCoordinateSequence(java.io.StreamTokenizer,java.util.EnumSet,int,boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:811,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getCoordinateSequence(java.io.StreamTokenizer,java.util.EnumSet,int,boolean)"
    - Src: "org.locationtech.jts.io.WKTReader:811,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readLinearRingText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 828
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.WKTReader].getCoordinateSequence(java.io.StreamTokenizer,java.util.EnumSet,int,boolean)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:829,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getCoordinateSequence(java.io.StreamTokenizer,java.util.EnumSet,int,boolean)"
    - Src: "org.locationtech.jts.io.WKTReader:829,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 885
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].createCoordinateSequenceEmpty(java.util.EnumSet)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.WKTReader].readLinearRingText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:887"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:890"
        BranchSideFuncs:
        - "createCoordinateSequenceEmpty(java.util.EnumSet)"
        - "createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:889"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:893"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:898"
        BranchSideFuncs:
        - "getNextCloserOrComma(java.io.StreamTokenizer)"
        - "readLinearRingText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:897"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:886,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:887,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:888,1"
      Dst: "[org.locationtech.jts.io.WKTReader].createCoordinateSequenceEmpty(java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:888,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.WKTReader:890,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:891,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readLinearRingText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:892,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:895,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:898,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.WKTReader:899,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.WKTReader:899,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 479
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:480,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:480,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readMultiPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 843
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.io.WKTReader].lookAheadWord(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.WKTReader].getCoordinateSequenceOldMultiPoint(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].readPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 37
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:845"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:851"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTReader:850"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:851"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:859"
        BranchSideFuncs:
        - "lookAheadWord(java.io.StreamTokenizer)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:858"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:853"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:858"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:853"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:858"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:863"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:868"
        BranchSideFuncs:
        - "getNextCloserOrComma(java.io.StreamTokenizer)"
        - "readPointText(java.io.StreamTokenizer,java.util.EnumSet)"
      - BranchSide: "org.locationtech.jts.io.WKTReader:867"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:844,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:845,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:846,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.io.WKTReader:852,1"
      Dst: "[org.locationtech.jts.io.WKTReader].lookAheadWord(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:855,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getCoordinateSequenceOldMultiPoint(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:854,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.WKTReader:859,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:860,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readPointText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:861,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:862,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:868,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.WKTReader:869,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.io.WKTReader].getCoordinateSequenceOldMultiPoint(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 423
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getCoordinate(java.io.StreamTokenizer,java.util.EnumSet,boolean)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:425"
        BranchSideFuncs:
        - "getNextCloserOrComma(java.io.StreamTokenizer)"
        - "getCoordinate(java.io.StreamTokenizer,java.util.EnumSet,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:424,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:426,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getCoordinate(java.io.StreamTokenizer,java.util.EnumSet,boolean)"
    - Src: "org.locationtech.jts.io.WKTReader:426,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:427,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:427,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:429,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.WKTReader:430,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTReader].readMultiLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 913
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    - "[org.locationtech.jts.io.WKTReader].readLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:915"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:919"
        BranchSideFuncs:
        - "createMultiLineString()"
      - BranchSide: "org.locationtech.jts.io.WKTReader:918"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:924"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:920"
        BranchSideFuncs:
        - "getNextCloserOrComma(java.io.StreamTokenizer)"
        - "readLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:914,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:915,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:916,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    - Src: "org.locationtech.jts.io.WKTReader:919,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:921,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readLineStringText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:922,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:923,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:926,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.WKTReader:927,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.WKTReader:927,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:291,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:55,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readMultiPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 941
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - "[org.locationtech.jts.io.WKTReader].readPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:943"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:946"
        BranchSideFuncs:
        - "createMultiPolygon()"
      - BranchSide: "org.locationtech.jts.io.WKTReader:945"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:951"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:948"
        BranchSideFuncs:
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.io.WKTReader:947"
        BranchSideFuncs:
        - "readPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
        - "getNextCloserOrComma(java.io.StreamTokenizer)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:942,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:943,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:944,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - Src: "org.locationtech.jts.io.WKTReader:946,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:948,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readPolygonText(java.io.StreamTokenizer,java.util.EnumSet)"
    - Src: "org.locationtech.jts.io.WKTReader:949,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:950,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:952,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.WKTReader:953,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.WKTReader:953,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 330
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:331,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPolygon"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPolygon:64,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].readGeometryCollectionText(java.io.StreamTokenizer,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 969
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 2
    argTypes:
    - "java.io.StreamTokenizer"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTReader:971"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:974"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.io.WKTReader:973"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTReader:979"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTReader:975"
        BranchSideFuncs:
        - "readGeometryTaggedText(java.io.StreamTokenizer)"
        - "getNextCloserOrComma(java.io.StreamTokenizer)"
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:970,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextEmptyOrOpener(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:971,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:972,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.io.WKTReader:974,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:976,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:977,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTReader:978,1"
      Dst: "[org.locationtech.jts.io.WKTReader].getNextCloserOrComma(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:981,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.WKTReader:982,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.WKTReader:982,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:311,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:208,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.StringUtil].capitalize(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:398,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].capitalize(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jts.util.Memory].usedTotalString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:173,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:175,1"
      Dst: "[org.locationtech.jts.util.Memory].usedTotalString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Memory].usedTotalString()"
    functionSourceFile: "org.locationtech.jts.util.Memory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.util.Memory].usedString()"
    - "[org.locationtech.jts.util.Memory].totalString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Memory:57,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Memory:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Memory:57,1"
      Dst: "[org.locationtech.jts.util.Memory].usedString()"
    - Src: "org.locationtech.jts.util.Memory:58,1"
      Dst: "[org.locationtech.jts.util.Memory].totalString()"
    - Src: "org.locationtech.jts.util.Memory:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Memory].usedString()"
    functionSourceFile: "org.locationtech.jts.util.Memory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Memory].used()"
    - "[org.locationtech.jts.util.Memory].format(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Memory:30,1"
      Dst: "[org.locationtech.jts.util.Memory].used()"
    - Src: "org.locationtech.jts.util.Memory:30,1"
      Dst: "[org.locationtech.jts.util.Memory].format(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Memory].used()"
    functionSourceFile: "org.locationtech.jts.util.Memory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].totalMemory()"
    - "[java.lang.Runtime].freeMemory()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Memory:24,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "org.locationtech.jts.util.Memory:25,1"
      Dst: "[java.lang.Runtime].totalMemory()"
    - Src: "org.locationtech.jts.util.Memory:25,1"
      Dst: "[java.lang.Runtime].freeMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Memory].format(long)"
    functionSourceFile: "org.locationtech.jts.util.Memory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Memory].round(double)"
    - "[java.lang.StringBuilder].append(double)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Memory:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Memory:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Memory:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Memory:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Memory:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Memory:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Memory:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Memory:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Memory:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Memory:75,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Memory:75,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "org.locationtech.jts.util.Memory:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Memory:75,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Memory:77,1"
      Dst: "[org.locationtech.jts.util.Memory].round(double)"
    - Src: "org.locationtech.jts.util.Memory:77,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.util.Memory].round(double)"
    functionSourceFile: "org.locationtech.jts.util.Memory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].ceil(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Memory:85,1"
      Dst: "[java.lang.Math].ceil(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Memory].totalString()"
    functionSourceFile: "org.locationtech.jts.util.Memory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Memory].total()"
    - "[org.locationtech.jts.util.Memory].format(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Memory:52,1"
      Dst: "[org.locationtech.jts.util.Memory].total()"
    - Src: "org.locationtech.jts.util.Memory:52,1"
      Dst: "[org.locationtech.jts.util.Memory].format(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Memory].total()"
    functionSourceFile: "org.locationtech.jts.util.Memory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].totalMemory()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Memory:46,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "org.locationtech.jts.util.Memory:47,1"
      Dst: "[java.lang.Runtime].totalMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:190,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:209,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:210,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResultDisplayString(org.locationtech.jts.geom.Geometry)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:202,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResultDisplayString(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:203,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:204,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResultDisplayString(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:89,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:91,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:30,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:415,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:417,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:420,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:422,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:443,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.WKTWriter:445,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.io.OrdinateFormat"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.io.WKTWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:453"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:454,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.WKTWriter:455,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.io.OrdinateFormat"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:160,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - Src: "org.locationtech.jts.io.WKTWriter:160,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].ceil(double)"
    functionUses: 2
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:258"
        BranchSideFuncs:
        - "getScale()"
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].ceil(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.io.OrdinateFormat"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:75,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:92,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.OrdinateFormat:93,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.text.DecimalFormat"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.NumberFormat].getInstance(java.util.Locale)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.text.DecimalFormat].applyPattern(java.lang.String)"
    - "[java.text.DecimalFormat].setMaximumFractionDigits(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:98,1"
      Dst: "[java.text.NumberFormat].getInstance(java.util.Locale)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:105,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:107,1"
      Dst: "[java.text.DecimalFormat].applyPattern(java.lang.String)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:108,1"
      Dst: "[java.text.DecimalFormat].setMaximumFractionDigits(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet,org.locationtech.jts.io.WKTWriter$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].getOutputOrdinates()"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:474,1"
      Dst: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet,org.locationtech.jts.io.WKTWriter$1)"
    - Src: "org.locationtech.jts.io.WKTWriter:475,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.io.WKTWriter:478,1"
      Dst: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].getOutputOrdinates()"
    - Src: "org.locationtech.jts.io.WKTWriter:478,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet,org.locationtech.jts.io.WKTWriter$1)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.io.WKTWriter"
    - "java.util.EnumSet"
    - "org.locationtech.jts.io.WKTWriter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter:182,1"
      Dst: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.WKTWriter"
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter:192,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter:194,1"
      Dst: "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].getOutputOrdinates()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.EnumSet"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendPointTaggedText(org.locationtech.jts.geom.Point,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendLinearRingTaggedText(org.locationtech.jts.geom.LinearRing,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendLineStringTaggedText(org.locationtech.jts.geom.LineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendPolygonTaggedText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPointTaggedText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringTaggedText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonTaggedText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionTaggedText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[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()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:500"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:504"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:503"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:508"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:512"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:511"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:512"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:516"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:515"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:524"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:523"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:528"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:527"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:532"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:498,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:501,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPointTaggedText(org.locationtech.jts.geom.Point,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:505,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendLinearRingTaggedText(org.locationtech.jts.geom.LinearRing,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:509,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendLineStringTaggedText(org.locationtech.jts.geom.LineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:513,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPolygonTaggedText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:517,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPointTaggedText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:521,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringTaggedText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:525,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonTaggedText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:529,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionTaggedText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:533,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:533,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:534,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.io.WKTWriter:534,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:534,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTWriter:533,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:1006"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1007"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1006"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:1006"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1008"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1007"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1011"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:1008,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendPointTaggedText(org.locationtech.jts.geom.Point,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:553,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:555,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:556,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:556,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.EnumSet"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[java.io.Writer].append(java.lang.CharSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:782"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:784"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:783"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:784"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:786"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:785"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:782,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:783,1"
      Dst: "[java.io.Writer].append(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "boolean"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:804"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:808"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:807"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:808"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:809"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:808"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:810"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:820"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:819"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:811"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:813"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:813"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:804,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKTWriter:805,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:808,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:818,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.EnumSet"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.io.WKTWriter].writeNumber(double,org.locationtech.jts.io.OrdinateFormat)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getZ(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getM(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:738"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:743"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:742"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:743"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:747"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:746"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeNumber(double,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:736,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:736,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:738,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:740,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getZ(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:745,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getM(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeNumber(double,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:758,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendLinearRingTaggedText(org.locationtech.jts.geom.LinearRing,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:599,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:601,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:602,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:602,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendLineStringTaggedText(org.locationtech.jts.geom.LineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:576,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:578,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:579,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:579,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendPolygonTaggedText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:622,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:624,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:625,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "boolean"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:841"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:845"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:844"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:845"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:846"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:845"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:849"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:853"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:841,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.io.WKTWriter:842,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:845,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:847,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.WKTWriter:847,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:847,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:849,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.WKTWriter:851,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPointTaggedText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPointText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:645,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:647,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:648,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPointText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPointText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].indentCoords(boolean,int,int,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:873"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:877"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:876"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:878"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:886"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:885"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:879"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:873,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:874,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:881,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indentCoords(boolean,int,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:883,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:883,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:883,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].indentCoords(boolean,int,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:997"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:998"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:997"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:999"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:1000,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringTaggedText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:667,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:669,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:670,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:906"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:910"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:909"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:913"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:922"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:921"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:914"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:906,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:907,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:919,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:919,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:919,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonTaggedText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:690,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:692,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:693,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:941"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:945"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:944"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:948"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:957"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:956"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:949"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:941,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:942,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:954,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:954,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionTaggedText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:713,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:715,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:716,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:976"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:980"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:979"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:982"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:990"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:989"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:983"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:976,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:977,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:987,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:987,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:215,1"
      Dst: "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:216,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:217,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.util.ExceptionFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:187,1"
      Dst: "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:190,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].showError(java.lang.String,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setCaretPosition(int)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:311,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:313,1"
      Dst: "[javax.swing.text.JTextComponent].setCaretPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:314,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].logCommand(java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:82,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:85,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:69,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.InfoPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:80,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:82,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:83,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:88,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:88,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:277,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].logCommand(java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:82,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:85,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].expandCommand(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].removeNewline(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].removeNewline(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:102,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:103,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].toString()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:123,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:128,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:129,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:129,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].removeNewline(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replace(char,char)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:133,1"
      Dst: "[java.lang.String].replace(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    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.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:137,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:138,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].loadResult(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].setStrict(boolean)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].showError(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:142,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:142,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:143,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:143,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:144,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].setStrict(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:147,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].showError(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].showError(java.lang.String,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].exec(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    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.String].toLowerCase()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].exec(java.lang.String[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Process].getInputStream()"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Process].waitFor()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:174,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:175,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:175,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:200,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:200,1"
      Dst: "[java.lang.Runtime].exec(java.lang.String[])"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:202,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:205,1"
      Dst: "[java.lang.Process].getInputStream()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:205,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:205,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:208,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:209,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:209,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:212,1"
      Dst: "[java.lang.Process].waitFor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$3].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$3:80,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$200(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$3:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$200(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$200(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    - "java.awt.event.ActionEvent"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoomNext(java.awt.event.ActionEvent,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoomNext(java.awt.event.ActionEvent,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoomNext(java.awt.event.ActionEvent,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.event.ActionEvent"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].moveToNextNode(int)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].moveToNextNode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ActionEvent].getModifiers()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272,1"
      Dst: "[java.awt.event.ActionEvent].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].moveToNextNode(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].signum(float)"
    - "[javax.swing.JTree].getSelectionPath()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].nextPath(javax.swing.tree.TreePath,int)"
    - "[javax.swing.JTree].scrollPathToVisible(javax.swing.tree.TreePath)"
    - "[javax.swing.JTree].setSelectionPath(javax.swing.tree.TreePath)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:127,1"
      Dst: "[java.lang.Math].signum(float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:128,1"
      Dst: "[javax.swing.JTree].getSelectionPath()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].nextPath(javax.swing.tree.TreePath,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:133,1"
      Dst: "[javax.swing.JTree].scrollPathToVisible(javax.swing.tree.TreePath)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:136,1"
      Dst: "[javax.swing.JTree].setSelectionPath(javax.swing.tree.TreePath)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].nextPath(javax.swing.tree.TreePath,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.tree.TreePath"
    argCount: 2
    argTypes:
    - "javax.swing.tree.TreePath"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.tree.TreePath].getLastPathComponent()"
    - "[javax.swing.tree.TreePath].getParentPath()"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getIndexOfChild(org.locationtech.jtstest.testbuilder.GeometricObjectNode)"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildCount()"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildAt(int)"
    - "[javax.swing.tree.TreePath].pathByAddingChild(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:140,1"
      Dst: "[javax.swing.tree.TreePath].getLastPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:141,1"
      Dst: "[javax.swing.tree.TreePath].getParentPath()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getIndexOfChild(org.locationtech.jtstest.testbuilder.GeometricObjectNode)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildCount()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:152,1"
      Dst: "[javax.swing.tree.TreePath].pathByAddingChild(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getGeometry()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:520"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[java.text.NumberFormat].getInstance()"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.text.NumberFormat].setMaximumFractionDigits(int)"
    - "[java.text.NumberFormat].setGroupingUsed(boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:95,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:97,1"
      Dst: "[java.text.NumberFormat].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:98,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:102,1"
      Dst: "[java.text.NumberFormat].setMaximumFractionDigits(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:104,1"
      Dst: "[java.text.NumberFormat].setGroupingUsed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.AffineTransform].<init>()"
    - "[java.awt.geom.AffineTransform].translate(double,double)"
    - "[java.awt.geom.AffineTransform].scale(double,double)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:269,1"
      Dst: "[java.awt.geom.AffineTransform].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:270,1"
      Dst: "[java.awt.geom.AffineTransform].translate(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:271,1"
      Dst: "[java.awt.geom.AffineTransform].scale(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:273,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:273,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:345,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:346,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:347,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:348,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:199"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:187,1"
      Dst: "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:190,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:113,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].min(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:290,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:290,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:291,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:292,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:293,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:295,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:295,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:295,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - "[java.awt.Graphics].setXORMode(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].viewSize(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flashPointGeom(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    - "[java.lang.Thread].sleep(long)"
    - "[java.awt.Graphics].setPaintMode()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:453"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:444,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:445,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:445,1"
      Dst: "[java.awt.Graphics].setXORMode(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:446,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:449,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].viewSize(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:451,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flashPointGeom(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:454,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:455,1"
      Dst: "[java.lang.Thread].sleep(long)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:461,1"
      Dst: "[java.awt.Graphics].setPaintMode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].viewSize(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:465,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:466,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:466,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:301,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.geom.Envelope:306,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flashPointGeom(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:471,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:472,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    - "java.awt.Color"
    - "java.awt.Stroke"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.awt.ShapeWriter"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointShapeFactory$Point].<init>()"
    - "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.awt.ShapeWriter].setDecimation(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:94,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory$Point].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:94,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:96,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].setDecimation(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.PointShapeFactory$Point].<init>()"
    functionSourceFile: "org.locationtech.jts.awt.PointShapeFactory$Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Point:82,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.awt.PointTransformation"
    - "org.locationtech.jts.awt.PointShapeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:71,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].setDecimation(double)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.awt.ShapeWriter"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    - "java.awt.Color"
    - "java.awt.Stroke"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:145,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:146,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:151,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:166,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:173,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:174,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:178,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:180,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:193,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    - "[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: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:170,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:170,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:171,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:172,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:173,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:174,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:175,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:177,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalNameException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isDigit(char)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:573"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:574"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:573"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:573"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:578"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:577"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:579"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:583"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:587"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:592"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:591"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:592"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:597"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:596"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:573,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Verifier:578,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:579,1"
      Dst: "[java.lang.Character].isDigit(char)"
    - Src: "org.jdom2.Verifier:592,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1262"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 530
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:531"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:532"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:531"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:531"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:535"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:534"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:535"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:555"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:531,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Verifier:535,1"
      Dst: "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 357
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:358"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:363"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:362"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:363"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:368"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:367"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:368"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:374"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:373"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:374"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:382"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:381"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:375"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:363,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:368,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace:279,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.Namespace"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace:268,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace:279,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].equals(java.lang.Object)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 311
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 8
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:312"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:315"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:314"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:315"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:318"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:317"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:316,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Namespace].toString()"
    functionSourceFile: "org.jdom2.Namespace"
    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].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace:329,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Namespace:329,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Namespace:329,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].hashCode()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace:344,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].writeReplace()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace$NamespaceSerializationProxy].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace:379,1"
      Dst: "[org.jdom2.Namespace$NamespaceSerializationProxy].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace$NamespaceSerializationProxy].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace$NamespaceSerializationProxy"
    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: "org.jdom2.Namespace$NamespaceSerializationProxy:362,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].readResolve()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InvalidObjectException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace:389,1"
      Dst: "[java.io.InvalidObjectException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].getContainer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView$StretchedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryStretcherView,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView$StretchedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryStretcherView,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView$StretchedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryStretcherView,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView$StretchedGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView$StretchedGeometryContainer:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setStretchSize(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setNearnessTolerance(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isViewPerformant()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:51,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].getCount()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:60,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter:168,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].getCount()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].extractLineStrings(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].extractPoints(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNear(java.util.Collection,double,org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getCoordinateMoves(java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].<init>(org.locationtech.jts.geom.Geometry,java.util.Map)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].move()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].getModifiedCoordinates()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].extractLineStrings(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].extractPoints(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNear(java.util.Collection,double,org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getCoordinateMoves(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].<init>(org.locationtech.jts.geom.Geometry,java.util.Map)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].move()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].getModifiedCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].extractLineStrings(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:107,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:108,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:112,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:112,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:115,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:119,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:119,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:122,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:170,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].extractPoints(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:131,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:134,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:137,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:140,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:141,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:144,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 740
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(double,double)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:741,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 724
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 1
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:725"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:726"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:725"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:725,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNear(java.util.Collection,double,org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 4
    argTypes:
    - "java.util.Collection"
    - "double"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].<init>(java.util.Collection,double,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].getNearVertices(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].<init>(java.util.Collection,double,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].getNearVertices(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].<init>(java.util.Collection,double,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Collection"
    - "double"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].<init>(java.util.Collection,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].<init>(java.util.Collection,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].<init>(java.util.Collection,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].getNearVertices(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertices(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertices(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertices(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].geomPointsLen(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertex(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].geomPointsLen(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:100,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertex(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].geomPointsLen(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:173"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:107,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:107,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:108,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].findNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].geomPointsLen(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].isPointNearButNotOnSeg(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:128,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].geomPointsLen(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:137,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].isPointNearButNotOnSeg(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:158,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:162,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder].isPointNearButNotOnSeg(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:177,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertexFinder:183,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:66,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getCoordinateMoves(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getVertexCoordinate()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getStretchedVertex(double)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:149,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:150,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:150,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:151,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getVertexCoordinate()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getStretchedVertex(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:155,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher:156,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getVertexCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getStretchedVertex(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromVertex(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromSeg(org.locationtech.jts.geom.LineSegment,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromVertex(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromSeg(org.locationtech.jts.geom.LineSegment,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromVertex(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isNearRing()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromPoint(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getNearRingPoint(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCornerAwayFromArms(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isNearRing()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromPoint(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getNearRingPoint(int)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCornerAwayFromArms(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isNearRing()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:101,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromPoint(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:116,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:120,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:122,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 309
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].create()"
    - "[org.locationtech.jts.geom.Coordinate].create()"
    - "[org.locationtech.jts.geom.CoordinateXYM].create()"
    - "[org.locationtech.jts.geom.CoordinateXY].create()"
    functionUses: 1
    ICount: 25
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:310,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].create()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:425,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getNearRingPoint(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCornerAwayFromArms(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].normalize()"
    - "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].maxAngleToBisector(double)"
    - "[org.locationtech.jts.math.Vector2D].rotate(double)"
    - "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - "[org.locationtech.jts.math.Vector2D].angleTo(org.locationtech.jts.math.Vector2D)"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:215,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:218,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:218,1"
      Dst: "[org.locationtech.jts.math.Vector2D].normalize()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:220,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].maxAngleToBisector(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:224,1"
      Dst: "[org.locationtech.jts.math.Vector2D].rotate(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:226,1"
      Dst: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:232,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angleTo(org.locationtech.jts.math.Vector2D)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:233,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:236,1"
      Dst: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:67,1"
      Dst: "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].normalize()"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].length()"
    - "[org.locationtech.jts.math.Vector2D].divide(double)"
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Vector2D:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:159,1"
      Dst: "[org.locationtech.jts.math.Vector2D].length()"
    - Src: "org.locationtech.jts.math.Vector2D:161,1"
      Dst: "[org.locationtech.jts.math.Vector2D].divide(double)"
    - Src: "org.locationtech.jts.math.Vector2D:162,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.Vector2D].length()"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:151,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].divide(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:143,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].<init>(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:34,1"
      Dst: "[org.locationtech.jts.math.Vector2D].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.Vector2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].angle()"
    - "[org.locationtech.jts.algorithm.Angle].diff(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:219,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angle()"
    - Src: "org.locationtech.jts.math.Vector2D:219,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].diff(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].angle()"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:214,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].diff(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Angle:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:318"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].maxAngleToBisector(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:198"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.Vector2D].rotate(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:238,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.math.Vector2D:239,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.math.Vector2D:240,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:133,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].angleTo(org.locationtech.jts.math.Vector2D)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.Vector2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].angle()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Vector2D:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Vector2D:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:224,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:33"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:282,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromSeg(org.locationtech.jts.geom.LineSegment,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:128,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:131,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:135,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 4
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:378"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:377"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:377,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:182,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].create()"
    - "[org.locationtech.jts.geom.CoordinateXYM].create()"
    - "[org.locationtech.jts.geom.CoordinateXY].create()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].create()"
    - "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - "[org.locationtech.jts.geom.Coordinate].setY(double)"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 53
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:352"
        BranchSideFuncs:
        - "setY(double)"
        - "setX(double)"
        - "create()"
    - Branch String: "org.locationtech.jts.geom.LineSegment:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:340,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:345,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LineSegment:356,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].create()"
    - Src: "org.locationtech.jts.geom.LineSegment:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - Src: "org.locationtech.jts.geom.LineSegment:358,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].<init>(org.locationtech.jts.geom.Geometry,java.util.Map)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].move()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover$MoveVerticesOperation].<init>(org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover,java.util.Map)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover:43,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover$MoveVerticesOperation].<init>(org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover,java.util.Map)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover:45,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover$MoveVerticesOperation].<init>(org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover,java.util.Map)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover$MoveVerticesOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover$MoveVerticesOperation:60,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].editPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:143,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:146,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:151,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:155,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:200,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:204,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:205,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:206,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:206,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:207,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:210,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:213,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:214,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:214,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:218,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:225,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].editPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:168,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:171,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:172,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:177,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:177,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:178,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:183,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:184,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:185,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:189,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:193,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover].getModifiedCoordinates()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.GeometryVerticesMover"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].getStretchedGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].getStretchedVertices(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].numVerticesInMask(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].stretch(double,double,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher].getModifiedCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isCacheValid()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.awt.ShapeCollectionPathIterator$1].<init>(org.locationtech.jts.awt.ShapeCollectionPathIterator)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.awt.ShapeCollectionPathIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeCollectionPathIterator$1].getWindingRule()"
    functionSourceFile: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1:31,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeCollectionPathIterator$1].isDone()"
    functionSourceFile: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeCollectionPathIterator$1].next()"
    functionSourceFile: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeCollectionPathIterator$1].currentSegment(float[])"
    functionSourceFile: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "float[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1:42,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeCollectionPathIterator$1].currentSegment(double[])"
    functionSourceFile: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeCollectionPathIterator$1:46,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Plane3D].<init>(org.locationtech.jts.math.Vector3D,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Plane3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.math.Vector3D"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Plane3D:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Plane3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.math.Vector3D)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.math.Vector3D].length()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Plane3D:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Plane3D:54,1"
      Dst: "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.math.Plane3D:55,1"
      Dst: "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.math.Vector3D)"
    - Src: "org.locationtech.jts.math.Plane3D:56,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.math.Plane3D:57,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.Plane3D:58,1"
      Dst: "[org.locationtech.jts.math.Vector3D].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:104,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.Vector3D:107,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.math.Vector3D)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.Vector3D"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].length()"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:200,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Plane3D].closestAxisPlane()"
    functionSourceFile: "org.locationtech.jts.math.Plane3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].getX()"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.math.Vector3D].getY()"
    - "[org.locationtech.jts.math.Vector3D].getZ()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Plane3D:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Plane3D:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Plane3D:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Plane3D:74,1"
      Dst: "[org.locationtech.jts.math.Vector3D].getX()"
    - Src: "org.locationtech.jts.math.Plane3D:74,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.math.Plane3D:75,1"
      Dst: "[org.locationtech.jts.math.Vector3D].getY()"
    - Src: "org.locationtech.jts.math.Plane3D:76,1"
      Dst: "[org.locationtech.jts.math.Vector3D].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.math.Vector3D].getX()"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].getY()"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].getZ()"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Rectangle].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.Rectangle"
    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: "org.locationtech.jts.algorithm.Rectangle:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Rectangle].createFromSidePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.Rectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Rectangle].computeLineEquationC(double,double,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Rectangle].createLineForStandardEquation(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.LineSegment].lineIntersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Rectangle:55,1"
      Dst: "[org.locationtech.jts.algorithm.Rectangle].computeLineEquationC(double,double,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:61,1"
      Dst: "[org.locationtech.jts.algorithm.Rectangle].createLineForStandardEquation(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:75,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:75,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.Rectangle:76,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].lineIntersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Rectangle:86,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.Rectangle].computeLineEquationC(double,double,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Rectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Rectangle].createLineForStandardEquation(double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Rectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Rectangle:117,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:119,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:127,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].lineIntersection(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:640,1"
      Dst: "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Intersection"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Intersection:47,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithmsDD"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    - "[org.locationtech.jts.math.DD].selfSubtract(double)"
    - "[org.locationtech.jts.math.DD].selfMultiply(double)"
    - "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].doubleValue()"
    - "[org.locationtech.jts.math.DD].selfDivide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    functionUses: 1
    ICount: 71
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithmsDD:218"
        BranchSideFuncs:
        - "<init>(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:200,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:200,1"
      Dst: "[org.locationtech.jts.math.DD].selfSubtract(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:202,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:202,1"
      Dst: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:208,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:212,1"
      Dst: "[org.locationtech.jts.math.DD].selfDivide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:212,1"
      Dst: "[org.locationtech.jts.math.DD].doubleValue()"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:215,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithmsDD:219,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].<init>(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:189,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:190,1"
      Dst: "[org.locationtech.jts.math.DD].init(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfSubtract(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:442"
        BranchSideFuncs:
        - "selfAdd(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:441"
        BranchSideFuncs:
        - "selfAdd(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:441,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:442,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 374
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 504
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:505,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 510
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 425
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 7
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:427"
        BranchSideFuncs:
        - "selfAdd(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:426"
        BranchSideFuncs:
        - "selfAdd(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:426,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:427,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:465"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
      - BranchSide: "org.locationtech.jts.math.DD:464"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].createNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:136,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:200,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:201,1"
      Dst: "[org.locationtech.jts.math.DD].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:234,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:210,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:211,1"
      Dst: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 266
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 490
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:491,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfDivide(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 564
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:565,1"
      Dst: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 584
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].doubleValue()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 926
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Rectangle].computeLineEquationC(double,double,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Rectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Rectangle].createLineForStandardEquation(double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Rectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Rectangle:117,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:119,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:127,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:43,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:44,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:64,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:79,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:49,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:50,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:70,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:71,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:71,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:79,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:64,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:70,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:71,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:71,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].compute()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:79,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:89"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:86,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:100"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:96,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:97,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:98,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$000(org.locationtech.jts.precision.SimpleMinimumClearance)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:39,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:89"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:86,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:39,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:100"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:96,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:97,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:98,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.BufferFunctions$1].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.BufferFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.BufferFunctions$1:182,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.BufferFunctions$1].map(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.BufferFunctions$1"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.BufferFunctions$1:186,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DescendantIterator].<init>(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.Parent].getContent()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:100,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.DescendantIterator:103,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.DescendantIterator:103,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.DescendantIterator:104,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DescendantIterator].iterator()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.DescendantIterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator].<init>(org.jdom2.Parent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:110,1"
      Dst: "[org.jdom2.DescendantIterator].<init>(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DescendantIterator].<init>(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.Parent].getContent()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:100,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.DescendantIterator:103,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.DescendantIterator:103,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.DescendantIterator:104,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DescendantIterator].hasNext()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 192
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DescendantIterator].next()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 2
    returnType: "org.jdom2.Content"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.Element].getContentSize()"
    - "[org.jdom2.Element].getContent()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 196
    ICount: 64
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "org.jdom2.DescendantIterator:131"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:134"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:133"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:134"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:139"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:138"
        BranchSideFuncs:
        - "getContentSize()"
        - "next()"
    - Branch String: "org.jdom2.DescendantIterator:143"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:153"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:143"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:153"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:147"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:150"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
      - BranchSide: "org.jdom2.DescendantIterator:149"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:154"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:159"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:160"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:172"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:168"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:171"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:139,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.DescendantIterator:143,1"
      Dst: "[org.jdom2.Element].getContentSize()"
    - Src: "org.jdom2.DescendantIterator:146,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.DescendantIterator:146,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.DescendantIterator:148,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.DescendantIterator:154,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.jdom2.Element].getContentSize()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 478
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].size()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:479,1"
      Dst: "[org.jdom2.ContentList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].size()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 554
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 83
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getContent()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 762
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    functionSourceFile: "org.jdom2.internal.ArrayCopy"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ArrayCopy:82"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ArrayCopy:81"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ArrayCopy:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.jdom2.internal.ArrayCopy:82,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.DescendantIterator].remove()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$CLListIterator].remove()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].remove()"
    - "[org.jdom2.ContentList$CLIterator].remove()"
    - "[org.jdom2.AttributeList$ALIterator].remove()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].remove()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].remove()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].remove()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].remove()"
    - "[org.jdom2.FilterIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].remove()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].remove()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].remove()"
    - "[org.jdom2.ContentList$FilterListIterator].remove()"
    - "[org.jdom2.DescendantIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[java.util.Iterator].remove()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 3
    ICount: 30
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "org.jdom2.DescendantIterator:190"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:190"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:196"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:197"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:205"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:202"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:205"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:186,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "org.jdom2.DescendantIterator:190,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].<init>()"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:82,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].cdata(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.CDATA"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedCDATA].<init>(java.lang.String)"
    - "[org.jdom2.located.LocatedCDATA].setLine(int)"
    - "[org.jdom2.located.LocatedCDATA].setColumn(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:86,1"
      Dst: "[org.jdom2.located.LocatedCDATA].<init>(java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:87,1"
      Dst: "[org.jdom2.located.LocatedCDATA].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:88,1"
      Dst: "[org.jdom2.located.LocatedCDATA].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedCDATA].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CDATA].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedCDATA:82,1"
      Dst: "[org.jdom2.CDATA].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.CDATA].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:98,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.CDATA:99,1"
      Dst: "[org.jdom2.CDATA].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content$CType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:89,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].setText(java.lang.String)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.CDATA"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.CDATA:118"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:119"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:118"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:118"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:123"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:122"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.CDATA:124"
      Branch Sides:
      - BranchSide: "org.jdom2.CDATA:128"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.CDATA:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.CDATA:118,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.CDATA:123,1"
      Dst: "[org.jdom2.Verifier].checkCDATASection(java.lang.String)"
    - Src: "org.jdom2.CDATA:125,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.located.LocatedCDATA].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedCDATA].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].text(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Text"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedText].<init>(java.lang.String)"
    - "[org.jdom2.located.LocatedText].setLine(int)"
    - "[org.jdom2.located.LocatedText].setColumn(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:94,1"
      Dst: "[org.jdom2.located.LocatedText].<init>(java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:95,1"
      Dst: "[org.jdom2.located.LocatedText].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:96,1"
      Dst: "[org.jdom2.located.LocatedText].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedText].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedText:79,1"
      Dst: "[org.jdom2.Text].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.Text].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:111,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Text:112,1"
      Dst: "[org.jdom2.Text].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content$CType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:89,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].setText(java.lang.String)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Text"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Text:176"
      Branch Sides:
      - BranchSide: "org.jdom2.Text:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Text:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Text:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Text:184"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Text:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Text:181,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Text:182,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[org.jdom2.Verifier].isXMLCharacter(int)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:434"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:438"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:439"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:494"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:450"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:460"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:452"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:449"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:461"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:488"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:465"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:469"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:468"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:469"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:481"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:471"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:438,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:450,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:461,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.jdom2.Verifier:469,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].isXMLCharacter(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedText].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedText"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedText].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedText"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].comment(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Comment"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedComment].<init>(java.lang.String)"
    - "[org.jdom2.located.LocatedComment].setLine(int)"
    - "[org.jdom2.located.LocatedComment].setColumn(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:102,1"
      Dst: "[org.jdom2.located.LocatedComment].<init>(java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:103,1"
      Dst: "[org.jdom2.located.LocatedComment].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:104,1"
      Dst: "[org.jdom2.located.LocatedComment].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedComment].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Comment].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedComment:73,1"
      Dst: "[org.jdom2.Comment].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.Comment].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:88,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Comment:89,1"
      Dst: "[org.jdom2.Comment].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].setText(java.lang.String)"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.Comment"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCommentData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Comment:123"
      Branch Sides:
      - BranchSide: "org.jdom2.Comment:127"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Comment:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Comment:123,1"
      Dst: "[org.jdom2.Verifier].checkCommentData(java.lang.String)"
    - Src: "org.jdom2.Comment:124,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkCommentData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].endsWith(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:860"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:864"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:863"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:864"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:867"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:866"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:867"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:872"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:871"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:860,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Verifier:864,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.jdom2.Verifier:867,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[org.jdom2.Verifier].isXMLCharacter(int)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:434"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:438"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:439"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:494"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:450"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:460"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:452"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:449"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:461"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:488"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:465"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:469"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:468"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:469"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:481"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:471"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:438,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:450,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:461,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.jdom2.Verifier:469,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].isXMLCharacter(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedComment].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedComment].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.DocType"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.located.LocatedDocType].setLine(int)"
    - "[org.jdom2.located.LocatedDocType].setColumn(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:111,1"
      Dst: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:112,1"
      Dst: "[org.jdom2.located.LocatedDocType].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:113,1"
      Dst: "[org.jdom2.located.LocatedDocType].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedDocType:86,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.DocType].setElementName(java.lang.String)"
    - "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - "[org.jdom2.DocType].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:124,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.DocType:125,1"
      Dst: "[org.jdom2.DocType].setElementName(java.lang.String)"
    - Src: "org.jdom2.DocType:126,1"
      Dst: "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - Src: "org.jdom2.DocType:127,1"
      Dst: "[org.jdom2.DocType].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setElementName(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.DocType:184"
      Branch Sides:
      - BranchSide: "org.jdom2.DocType:187"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DocType:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DocType:183,1"
      Dst: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - Src: "org.jdom2.DocType:185,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 976
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].isXMLNameStartCharacter(char)"
    - "[org.jdom2.Verifier].isXMLNameCharacter(char)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 33
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:977"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:981"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:980"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:982"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:988"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:987"
        BranchSideFuncs:
        - "isXMLNameStartCharacter(char)"
    - Branch String: "org.jdom2.Verifier:988"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:993"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:992"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:993"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1000"
        BranchSideFuncs:
        - "isXMLNameCharacter(char)"
      - BranchSide: "org.jdom2.Verifier:999"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:994"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:993"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:992"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:981,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:988,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:988,1"
      Dst: "[org.jdom2.Verifier].isXMLNameStartCharacter(char)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.Verifier:994,1"
      Dst: "[org.jdom2.Verifier].isXMLNameCharacter(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.jdom2.Verifier].isXMLNameStartCharacter(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 1158
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1159"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1158"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1159"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1158"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].isXMLNameCharacter(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 1143
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1144"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1143"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1144"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1143"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalNameException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setPublicID(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.DocType:213"
      Branch Sides:
      - BranchSide: "org.jdom2.DocType:216"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DocType:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DocType:212,1"
      Dst: "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - Src: "org.jdom2.DocType:214,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isXMLPublicIDCharacter(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:926"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:928"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:929"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:937"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:936"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:931"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:929"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:928"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:929,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:930,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:931,1"
      Dst: "[org.jdom2.Verifier].isXMLPublicIDCharacter(char)"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.jdom2.Verifier].isXMLPublicIDCharacter(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:897"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:897"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:898"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:898"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:899"
      Branch Sides: []
    - Branch String: "org.jdom2.Verifier:899"
      Branch Sides: []
    - Branch String: "org.jdom2.Verifier:901"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:902"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:903"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:904"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:905"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:906"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:907"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:908"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:909"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:910"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:911"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 30
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setSystemID(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.DocType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.DocType:244"
      Branch Sides:
      - BranchSide: "org.jdom2.DocType:247"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DocType:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DocType:243,1"
      Dst: "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - Src: "org.jdom2.DocType:245,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:952"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:954"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:955"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:960"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:955"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:960"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:955,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.jdom2.Verifier:961,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[org.jdom2.Verifier].isXMLCharacter(int)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:434"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:438"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:439"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:494"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:450"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:460"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:452"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:449"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:461"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:488"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:465"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:469"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:468"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:469"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:481"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:471"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:438,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:450,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:461,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.jdom2.Verifier:469,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].isXMLCharacter(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[org.jdom2.located.LocatedDocType].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].docType(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.DocType"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String)"
    - "[org.jdom2.located.LocatedDocType].setLine(int)"
    - "[org.jdom2.located.LocatedDocType].setColumn(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:120,1"
      Dst: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:121,1"
      Dst: "[org.jdom2.located.LocatedDocType].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:122,1"
      Dst: "[org.jdom2.located.LocatedDocType].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedDocType:104,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:145,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.DocType].setElementName(java.lang.String)"
    - "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - "[org.jdom2.DocType].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:124,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.DocType:125,1"
      Dst: "[org.jdom2.DocType].setElementName(java.lang.String)"
    - Src: "org.jdom2.DocType:126,1"
      Dst: "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - Src: "org.jdom2.DocType:127,1"
      Dst: "[org.jdom2.DocType].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].docType(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.DocType"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedDocType].<init>(java.lang.String)"
    - "[org.jdom2.located.LocatedDocType].setLine(int)"
    - "[org.jdom2.located.LocatedDocType].setColumn(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:128,1"
      Dst: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:129,1"
      Dst: "[org.jdom2.located.LocatedDocType].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:130,1"
      Dst: "[org.jdom2.located.LocatedDocType].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedDocType:117,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:158,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.DocType].setElementName(java.lang.String)"
    - "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - "[org.jdom2.DocType].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:124,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.DocType:125,1"
      Dst: "[org.jdom2.DocType].setElementName(java.lang.String)"
    - Src: "org.jdom2.DocType:126,1"
      Dst: "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - Src: "org.jdom2.DocType:127,1"
      Dst: "[org.jdom2.DocType].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedElement].<init>(java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.located.LocatedElement].setLine(int)"
    - "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:136,1"
      Dst: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:137,1"
      Dst: "[org.jdom2.located.LocatedElement].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:138,1"
      Dst: "[org.jdom2.located.LocatedElement].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:79,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - "[org.jdom2.Element].setName(java.lang.String)"
    - "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:160,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Element:129,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - Src: "org.jdom2.Element:161,1"
      Dst: "[org.jdom2.Element].setName(java.lang.String)"
    - Src: "org.jdom2.Element:162,1"
      Dst: "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:115,1"
      Dst: "[java.util.AbstractList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].setName(java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Element"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkElementName(java.lang.String)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:226"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:229"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:225,1"
      Dst: "[org.jdom2.Verifier].checkElementName(java.lang.String)"
    - Src: "org.jdom2.Element:227,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkElementName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Verifier:394,1"
      Dst: "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 357
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:358"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:363"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:362"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:363"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:368"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:367"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:368"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:374"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:373"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:374"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:382"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:381"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:375"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:363,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:368,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalNameException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Element"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getAdditionalNamespaces()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    - "[org.jdom2.Element].hasAttributes()"
    - "[org.jdom2.Element].getAttributes()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Attribute)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:251"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:255"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:254"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:255"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:262"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:261"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:258"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:262"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:261"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:262"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:272"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:271"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:263"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:272"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:271"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:266"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:269"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:256,1"
      Dst: "[org.jdom2.Element].getAdditionalNamespaces()"
    - Src: "org.jdom2.Element:256,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
    - Src: "org.jdom2.Element:259,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    - Src: "org.jdom2.Element:262,1"
      Dst: "[org.jdom2.Element].hasAttributes()"
    - Src: "org.jdom2.Element:263,1"
      Dst: "[org.jdom2.Element].getAttributes()"
    - Src: "org.jdom2.Element:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.Element:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.Element:263,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.Element:264,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.jdom2.Element].getAdditionalNamespaces()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:436"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:439"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:437,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "org.jdom2.Element:439,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 744
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Verifier:745,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 761
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.jdom2.Namespace"
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Attribute)"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 39
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:762"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:766"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:765"
        BranchSideFuncs:
        - "iterator()"
    - Branch String: "org.jdom2.Verifier:769"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:789"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "org.jdom2.Verifier:788"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:769"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:789"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "org.jdom2.Verifier:788"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:772"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:778"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:777"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:773"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:776"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:775"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Attribute)"
    - Branch String: "org.jdom2.Verifier:778"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:781"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
      - BranchSide: "org.jdom2.Verifier:780"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:781"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:788"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
      - BranchSide: "org.jdom2.Verifier:787"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:783"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:788"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:787"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:767,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.Verifier:769,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.Verifier:770,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.Verifier:776,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Attribute)"
    - Src: "org.jdom2.Verifier:779,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    - Src: "org.jdom2.Verifier:782,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - Src: "org.jdom2.Verifier:784,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:784,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:784,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 16
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 722
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].equals(java.lang.Object)"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:724"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:731"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
        - "getNamespace()"
      - BranchSide: "org.jdom2.Verifier:730"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:727"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:731"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:730"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:724,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.Verifier:724,1"
      Dst: "[org.jdom2.Namespace].equals(java.lang.Object)"
    - Src: "org.jdom2.Verifier:725,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - Src: "org.jdom2.Verifier:728,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:728,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:728,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.Attribute].getNamespace()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].equals(java.lang.Object)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 311
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 8
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:312"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:315"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:314"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:315"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:318"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:317"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:316,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:617"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:620"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:619"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:617"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:620"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:619"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:613,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Verifier:614,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.Verifier:617,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Verifier:618,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:618,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:618,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 670
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Verifier:671,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 687
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Element"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].hasAdditionalNamespaces()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
    - "[org.jdom2.Element].getAdditionalNamespaces()"
    - "[org.jdom2.Element].hasAttributes()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
    - "[org.jdom2.Element].getAttributes()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:690"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:694"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:693"
        BranchSideFuncs:
        - "hasAdditionalNamespaces()"
    - Branch String: "org.jdom2.Verifier:694"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:702"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
        - "getAdditionalNamespaces()"
      - BranchSide: "org.jdom2.Verifier:701"
        BranchSideFuncs:
        - "hasAttributes()"
    - Branch String: "org.jdom2.Verifier:697"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:702"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:701"
        BranchSideFuncs:
        - "hasAttributes()"
    - Branch String: "org.jdom2.Verifier:702"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:709"
        BranchSideFuncs:
        - "getAttributes()"
        - "checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
      - BranchSide: "org.jdom2.Verifier:708"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:704"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:709"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:708"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:688,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.Verifier:688,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - Src: "org.jdom2.Verifier:691,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:691,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:691,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.Verifier:694,1"
      Dst: "[org.jdom2.Element].hasAdditionalNamespaces()"
    - Src: "org.jdom2.Verifier:695,1"
      Dst: "[org.jdom2.Element].getAdditionalNamespaces()"
    - Src: "org.jdom2.Verifier:695,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
    - Src: "org.jdom2.Verifier:702,1"
      Dst: "[org.jdom2.Element].hasAttributes()"
    - Src: "org.jdom2.Verifier:703,1"
      Dst: "[org.jdom2.Element].getAttributes()"
    - Src: "org.jdom2.Verifier:703,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.jdom2.Element].getNamespace()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 238
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].hasAdditionalNamespaces()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1078
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].isEmpty()"
    - "[org.jdom2.AttributeList].isEmpty()"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1079"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1078"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.jdom2.Element:1079"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1078"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.jdom2.Element:1079,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.Element].hasAttributes()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1065
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].isEmpty()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1066"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1065"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.jdom2.Element:1066"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1065"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.jdom2.Element:1066,1"
      Dst: "[org.jdom2.AttributeList].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.AttributeList].isEmpty()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 552
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:553"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:552"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Element].getAttributes()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1104
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getAttributeList()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:1105,1"
      Dst: "[org.jdom2.Element].getAttributeList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getAttributeList()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1086
    functionDepth: 1
    returnType: "org.jdom2.AttributeList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].<init>(org.jdom2.Element)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1087"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1090"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element)"
      - BranchSide: "org.jdom2.Element:1089"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:1088,1"
      Dst: "[org.jdom2.AttributeList].<init>(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.AttributeList].<init>(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:110,1"
      Dst: "[java.util.AbstractList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Namespace"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.Namespace].getURI()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.IllegalAddException:282"
      Branch Sides:
      - BranchSide: "org.jdom2.IllegalAddException:282"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.IllegalAddException:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Element].getQualifiedName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Element].getName()"
    - "[java.lang.String].equals(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()"
    functionUses: 6
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Element:360"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:364"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "org.jdom2.Element:363"
        BranchSideFuncs:
        - "getPrefix()"
    Callsites:
    - Src: "org.jdom2.Element:360,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:360,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Element:361,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Element].getName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 212
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].element(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedElement].<init>(java.lang.String)"
    - "[org.jdom2.located.LocatedElement].setLine(int)"
    - "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:144,1"
      Dst: "[org.jdom2.located.LocatedElement].<init>(java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:145,1"
      Dst: "[org.jdom2.located.LocatedElement].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:146,1"
      Dst: "[org.jdom2.located.LocatedElement].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:90,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:173,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - "[org.jdom2.Element].setName(java.lang.String)"
    - "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:160,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Element:129,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - Src: "org.jdom2.Element:161,1"
      Dst: "[org.jdom2.Element].setName(java.lang.String)"
    - Src: "org.jdom2.Element:162,1"
      Dst: "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].element(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String)"
    - "[org.jdom2.located.LocatedElement].setLine(int)"
    - "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:152,1"
      Dst: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:153,1"
      Dst: "[org.jdom2.located.LocatedElement].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:154,1"
      Dst: "[org.jdom2.located.LocatedElement].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:105,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:188,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Element:188,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - "[org.jdom2.Element].setName(java.lang.String)"
    - "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:160,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Element:129,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - Src: "org.jdom2.Element:161,1"
      Dst: "[org.jdom2.Element].setName(java.lang.String)"
    - Src: "org.jdom2.Element:162,1"
      Dst: "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].element(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.located.LocatedElement].setLine(int)"
    - "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:161,1"
      Dst: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:162,1"
      Dst: "[org.jdom2.located.LocatedElement].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:163,1"
      Dst: "[org.jdom2.located.LocatedElement].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:121,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:204,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Element:204,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - "[org.jdom2.Element].setName(java.lang.String)"
    - "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:160,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Element:129,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - Src: "org.jdom2.Element:161,1"
      Dst: "[org.jdom2.Element].setName(java.lang.String)"
    - Src: "org.jdom2.Element:162,1"
      Dst: "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].processingInstruction(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String)"
    - "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    - "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:170,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:171,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:172,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedProcessingInstruction:82,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:103,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:132,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.ProcessingInstruction:133,1"
      Dst: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:134,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkProcessingInstructionTarget(java.lang.String)"
    - "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:145"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:145,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:147,1"
      Dst: "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkProcessingInstructionTarget(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:803"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:807"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:808"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:813"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:812"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:813"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:823"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:822"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:803,1"
      Dst: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - Src: "org.jdom2.Verifier:808,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.jdom2.Verifier:813,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 976
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].isXMLNameStartCharacter(char)"
    - "[org.jdom2.Verifier].isXMLNameCharacter(char)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 33
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:977"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:981"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:980"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:982"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:988"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:987"
        BranchSideFuncs:
        - "isXMLNameStartCharacter(char)"
    - Branch String: "org.jdom2.Verifier:988"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:993"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:992"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:993"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1000"
        BranchSideFuncs:
        - "isXMLNameCharacter(char)"
      - BranchSide: "org.jdom2.Verifier:999"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:994"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:993"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:992"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:981,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:988,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:988,1"
      Dst: "[org.jdom2.Verifier].isXMLNameStartCharacter(char)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.Verifier:994,1"
      Dst: "[org.jdom2.Verifier].isXMLNameCharacter(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalTargetException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "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: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:203"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:207"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:202,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:204,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:208,1"
      Dst: "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:840"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:847"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:846"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:841"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:847"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:846"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:838,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Verifier:841,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[org.jdom2.Verifier].isXMLCharacter(int)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:434"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:438"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:439"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:494"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:450"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:460"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:452"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:449"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:461"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:488"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:465"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:469"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:468"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:469"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:481"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:471"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:438,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:450,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:461,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.jdom2.Verifier:469,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].isXMLCharacter(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "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: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.util.Collections].emptyMap()"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 51
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:337"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:390"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:346"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:371"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:348"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:363"
        BranchSideFuncs:
        - "extractQuotedString(java.lang.String)"
      - BranchSide: "org.jdom2.ProcessingInstruction:362"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:355"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:358"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:357"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:363"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:363"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:380"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:329,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:334,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.jdom2.ProcessingInstruction:337,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.ProcessingInstruction:344,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.ProcessingInstruction:346,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.ProcessingInstruction:349,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.jdom2.ProcessingInstruction:352,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.jdom2.ProcessingInstruction:352,1"
      Dst: "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:356,1"
      Dst: "[java.util.Collections].emptyMap()"
    - Src: "org.jdom2.ProcessingInstruction:363,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "org.jdom2.ProcessingInstruction:386,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: 410
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:422"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:441"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:440"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:424"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:425"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:424"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:424"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:411"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:410"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:425"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:431"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:410"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:422,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.ProcessingInstruction:423,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].processingInstruction(int,int,java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    - "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    - "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:179,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:180,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:181,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedProcessingInstruction:96,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:117,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.ProcessingInstruction:118,1"
      Dst: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:119,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkProcessingInstructionTarget(java.lang.String)"
    - "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:145"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:145,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:147,1"
      Dst: "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    - "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - "[java.util.LinkedHashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:225"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:229"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:222,1"
      Dst: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    - Src: "org.jdom2.ProcessingInstruction:224,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:226,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:230,1"
      Dst: "[java.util.LinkedHashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:299"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:306"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:305"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:306"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:310"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:297,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.jdom2.ProcessingInstruction:306,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.ProcessingInstruction:307,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "org.jdom2.ProcessingInstruction:310,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:840"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:847"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:846"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:841"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:847"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:846"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:838,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Verifier:841,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "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: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    - "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    - "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:188,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:189,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:190,1"
      Dst: "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedProcessingInstruction:109,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:132,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.ProcessingInstruction:133,1"
      Dst: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:134,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedProcessingInstruction].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].entityRef(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.EntityRef"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String)"
    - "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    - "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:196,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:197,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:198,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedEntityRef:77,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:97,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.EntityRef].setName(java.lang.String)"
    - "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:129,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.EntityRef:130,1"
      Dst: "[org.jdom2.EntityRef].setName(java.lang.String)"
    - Src: "org.jdom2.EntityRef:131,1"
      Dst: "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - Src: "org.jdom2.EntityRef:132,1"
      Dst: "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].setName(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.EntityRef"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.EntityRef:186"
      Branch Sides:
      - BranchSide: "org.jdom2.EntityRef:189"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.EntityRef:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.EntityRef:185,1"
      Dst: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - Src: "org.jdom2.EntityRef:187,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 976
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].isXMLNameStartCharacter(char)"
    - "[org.jdom2.Verifier].isXMLNameCharacter(char)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 33
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:977"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:981"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:980"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:982"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:988"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:987"
        BranchSideFuncs:
        - "isXMLNameStartCharacter(char)"
    - Branch String: "org.jdom2.Verifier:988"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:993"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:992"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:993"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1000"
        BranchSideFuncs:
        - "isXMLNameCharacter(char)"
      - BranchSide: "org.jdom2.Verifier:999"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:994"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:993"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:992"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:981,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:988,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:988,1"
      Dst: "[org.jdom2.Verifier].isXMLNameStartCharacter(char)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:989,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.Verifier:994,1"
      Dst: "[org.jdom2.Verifier].isXMLNameCharacter(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalNameException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.EntityRef"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.EntityRef:203"
      Branch Sides:
      - BranchSide: "org.jdom2.EntityRef:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.EntityRef:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.EntityRef:202,1"
      Dst: "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - Src: "org.jdom2.EntityRef:204,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isXMLPublicIDCharacter(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:926"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:928"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:929"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:937"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:936"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:931"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:929"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:928"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:929,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:930,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:931,1"
      Dst: "[org.jdom2.Verifier].isXMLPublicIDCharacter(char)"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:932,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.EntityRef"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.EntityRef:220"
      Branch Sides:
      - BranchSide: "org.jdom2.EntityRef:223"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.EntityRef:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.EntityRef:219,1"
      Dst: "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - Src: "org.jdom2.EntityRef:221,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:952"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:954"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:955"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:960"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:955"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:960"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:955,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.jdom2.Verifier:961,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.EntityRef"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    - "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:205,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:206,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:207,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedEntityRef:109,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.EntityRef].setName(java.lang.String)"
    - "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:129,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.EntityRef:130,1"
      Dst: "[org.jdom2.EntityRef].setName(java.lang.String)"
    - Src: "org.jdom2.EntityRef:131,1"
      Dst: "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - Src: "org.jdom2.EntityRef:132,1"
      Dst: "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.EntityRef"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String)"
    - "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    - "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedJDOMFactory:213,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:214,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    - Src: "org.jdom2.located.LocatedJDOMFactory:215,1"
      Dst: "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedEntityRef:92,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:112,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.EntityRef].setName(java.lang.String)"
    - "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:129,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.EntityRef:130,1"
      Dst: "[org.jdom2.EntityRef].setName(java.lang.String)"
    - Src: "org.jdom2.EntityRef:131,1"
      Dst: "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - Src: "org.jdom2.EntityRef:132,1"
      Dst: "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 26
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsHtml(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$9:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsHtml(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsHtml(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].setShowingABwithSpatialFunction(boolean)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[java.io.File].exists()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].write(java.io.File,org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:83,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:84,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:85,1"
      Dst: "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].setShowingABwithSpatialFunction(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:100,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:101,1"
      Dst: "[java.io.File].exists()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:101,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].write(java.io.File,org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - "[javax.swing.JFrame].<init>()"
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JFrame].getContentPane()"
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:59,1"
      Dst: "[javax.swing.JFrame].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:64,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:66,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:66,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:67,1"
      Dst: "[javax.swing.JFrame].getContentPane()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:67,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:100,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:84,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:94,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:109,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].setShowingABwithSpatialFunction(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].write(java.io.File,org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "org.locationtech.jtstest.test.TestCaseList"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].setDescription(java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runMapAndRuns(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].indexHtml(java.util.List,java.util.Map,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createHtmlFile(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testTopHtml()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].html(org.locationtech.jtstest.test.Testable,int,int)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].setDescription(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:87,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:87,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runMapAndRuns(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].indexHtml(java.util.List,java.util.Map,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createHtmlFile(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testTopHtml()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:95,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:95,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:96,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:98,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:104,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:104,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:104,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:105,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:105,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].html(org.locationtech.jtstest.test.Testable,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].setDescription(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runMapAndRuns(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getTestFile()"
    - "[java.io.File].getName()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].addToListMapAndList(java.lang.String,java.lang.Object,java.util.Map,java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>(org.locationtech.jtstest.testbuilder.io.HtmlWriter$1)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:402"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:401"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:395"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:390,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:391,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:393,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:394,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:396,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:397,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:397,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getTestFile()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:397,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:398,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:398,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:399,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].addToListMapAndList(java.lang.String,java.lang.Object,java.util.Map,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:405,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>(org.locationtech.jtstest.testbuilder.io.HtmlWriter$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testrunner.TestCase"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].addToListMapAndList(java.lang.String,java.lang.Object,java.util.Map,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.util.Map"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:412,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:413,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:414,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:417,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:419,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>(org.locationtech.jtstest.testbuilder.io.HtmlWriter$1)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.HtmlWriter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList"
    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: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList:78,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].indexHtml(java.util.List,java.util.Map,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.Map"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlTitle(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runName(java.lang.String,int)"
    functionUses: 0
    ICount: 242
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:457"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:456"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:468"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:475"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:474"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:488"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:487"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:425,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:425,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:425,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:441,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:441,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:442,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:444,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:445,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:451,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:451,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:462,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlTitle(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:472,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runName(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getDescription()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:308,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:310,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getDescription()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:117,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlTitle(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runName(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    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].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createHtmlFile(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getPath()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:386,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.BufferedWriter].flush()"
    - "[java.io.BufferedWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.io.OutputStreamWriter].close()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.util.FileUtil:118,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.FileUtil:119,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:120,1"
      Dst: "[java.io.BufferedWriter].flush()"
    - Src: "org.locationtech.jtstest.util.FileUtil:121,1"
      Dst: "[java.io.BufferedWriter].close()"
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.util.FileUtil:122,1"
      Dst: "[java.io.OutputStreamWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testTopHtml()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    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].toString()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:498,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:498,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:498,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].html(org.locationtech.jtstest.test.Testable,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForAB(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForTests(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:114,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:114,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:117,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForAB(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForTests(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForAB(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].toText()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toText()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:280,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:282,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[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: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getPath()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - "[java.awt.Image].getGraphics()"
    - "[javax.swing.JComponent].paint(java.awt.Graphics)"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:360,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:362,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:364,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:370,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:371,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:371,1"
      Dst: "[javax.swing.JComponent].paint(java.awt.Graphics)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].createFixed()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$1].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].initLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:61,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:48,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].createFixed()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:56,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:243,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$1].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:243,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:412,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].initLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].createFixed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].initFixed()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].initFixed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:48,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].initFixed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:55,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:245,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].setTab(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:267,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:269,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].setTab(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:273,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:275,1"
      Dst: "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - Src: "org.locationtech.jts.io.WKTWriter:277,1"
      Dst: "[java.util.AbstractCollection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.WKTWriter].setTab(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].stringOfChar(char,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:314,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:315,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].stringOfChar(char,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].stringOfChar(char,int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:171,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:173,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.io.WKTWriter:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$1].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$1:243,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:461,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:457,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.test.TestCaseList:25,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Stack].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:18,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:20,1"
      Dst: "[java.util.Stack].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].initLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel,int)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    - "[org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    - "[java.awt.Color].darker()"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[java.awt.Color].darker()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:45,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[java.awt.BasicStroke].<init>(float)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:76,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:79,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:36,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:42,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:35,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[java.awt.Color].getHSBColor(float,float,float)"
    - "[java.awt.Color].getAlpha()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:49,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:50,1"
      Dst: "[java.awt.Color].getHSBColor(float,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].getAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:33"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Color"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineEndStyle].<init>(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineEndStyle].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.awt.Color"
    - "double"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Color"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineEndStyle].<init>(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineEndStyle].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Color"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineStringStyle].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineStringStyle].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:52,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:71,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:76,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:77,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.Style"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:56,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:466,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:468,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:541,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:39,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].arrayAdd(java.util.ArrayList,java.lang.Object,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:42,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].arrayAdd(java.util.ArrayList,java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].arrayAdd(java.util.ArrayList,java.lang.Object,int)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.ArrayList"
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].set(int,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.test.TestCaseList:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.test.TestCaseList:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.test.TestCaseList:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.test.TestCaseList:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.test.TestCaseList:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:61,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.test.TestCaseList:63,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jtstest.test.TestCaseList:70,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jtstest.test.TestCaseList:70,1"
      Dst: "[java.util.ArrayList].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.test.TestCase].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:54,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].<init>()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCase:48,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCase:64,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 11
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jtstest.test.TestCase].toNullOrGeometry(java.lang.String)"
    - "[org.locationtech.jtstest.test.TestCase].init(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCase:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.test.TestCase:28,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.test.TestCase:29,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.test.TestCase:73,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].toNullOrGeometry(java.lang.String)"
    - Src: "org.locationtech.jtstest.test.TestCase:73,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].init(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.test.TestCase:79,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.test.TestCase].toNullOrGeometry(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.test.TestCase:350"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.test.TestCase:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.test.TestCase:352"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCase:353,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.test.TestCase:354,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.test.TestCase:355,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:187,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.WKTReader:190,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[java.io.StringReader].close()"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:237,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:239,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTReader:242,1"
      Dst: "[java.io.StringReader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 255
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].createTokenizer(java.io.Reader)"
    - "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:256,1"
      Dst: "[org.locationtech.jts.io.WKTReader].createTokenizer(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTReader:258,1"
      Dst: "[org.locationtech.jts.io.WKTReader].readGeometryTaggedText(java.io.StreamTokenizer)"
    - Src: "org.locationtech.jts.io.WKTReader:261,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jts.io.WKTReader:261,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jtstest.test.TestCase].init(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 11
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].clear()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].clear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].clear()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:54,1"
      Dst: "[java.util.Vector].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEvent:27,1"
      Dst: "[java.util.EventObject].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryListener].geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:386"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:388,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:390,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:390,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryListener].geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:80,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:187,1"
      Dst: "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:190,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:215,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForTests(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForBinaryPredicates(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForBinaryPredicates(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForBinaryPredicates(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForRelateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForPredicateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 74
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:522"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:538"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:537"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:522,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForRelateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:524,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForPredicateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForRelateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].insertParagraphs(java.lang.String)"
    - "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].insertParagraphs(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:187,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:187,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:189,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:191,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:191,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:191,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:576"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:575"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:570,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:576,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    functionSourceFile: "org.locationtech.jts.geom.Dimension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    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: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].insertParagraphs(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:200,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:201,1"
      Dst: "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:203,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForPredicateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 5
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:210,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:213,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:213,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:215,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:217,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:217,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:217,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:237"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:229,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:245,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:246,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:249,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:56,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createStroke()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createStroke()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createStroke()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Stroke"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BasicStroke].<init>(float)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createDashes(float)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:76,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createDashes(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:79,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createDashes(float)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float[]"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    - "java.awt.Color"
    - "java.awt.Stroke"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createStroke()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Stroke"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BasicStroke].<init>(float)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createDashes(float)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:76,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createDashes(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:79,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createDashes(float)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float[]"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineAlpha(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFillColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFillAlpha(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStroked(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFilled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStrokeWidth(float)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setDashed(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getDashes()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setDashes(float[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].<init>(java.util.List,boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.cmd.IndexedGeometry].initIndex(java.util.List)"
    - "[org.locationtech.jtstest.cmd.IndexedGeometry].initList(java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:647"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:651"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:650"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:646,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:648,1"
      Dst: "[org.locationtech.jtstest.cmd.IndexedGeometry].initIndex(java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:651,1"
      Dst: "[org.locationtech.jtstest.cmd.IndexedGeometry].initList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].initList(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].size()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:657"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:659"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:656,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:657,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:658,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:658,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].initIndex(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[java.lang.Integer].<init>(int)"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:665"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:668"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:664,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:665,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:666,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:667,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:667,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:667,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:185,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].query(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.Collections].sort(java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:674"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:680"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:679"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:675,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:675,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:677,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator"
    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: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:400,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].compareTo(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:402,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:404,1"
      Dst: "[org.locationtech.jts.geom.Envelope].compareTo(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:816"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:821"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:820"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:817"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:821"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:823"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:824"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:825"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:824"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:825"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:826"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:825"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:826"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:827"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:826"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:827"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:828"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:827"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:828"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:829"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:828"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:829"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:830"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:829"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:830"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:831"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:830"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:831"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:832"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:831"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:816,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 23
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:400,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].compareTo(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:402,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:404,1"
      Dst: "[org.locationtech.jts.geom.Envelope].compareTo(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:400,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Matrix].<init>()"
    functionSourceFile: "org.locationtech.jts.math.Matrix"
    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: "org.locationtech.jts.math.Matrix:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Matrix].swapRows(double[][],int,int)"
    functionSourceFile: "org.locationtech.jts.math.Matrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double[][]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Matrix:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:26"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:25"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:30"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.Matrix].swapRows(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.math.Matrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Matrix:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:35"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.Matrix].solve(double[][],double[])"
    functionSourceFile: "org.locationtech.jts.math.Matrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double[]"
    argCount: 2
    argTypes:
    - "double[][]"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.math.Matrix].swapRows(double[][],int,int)"
    - "[org.locationtech.jts.math.Matrix].swapRows(double[],int,int)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Matrix:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:79"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.math.Matrix:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:92"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.math.Matrix:58,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.Matrix:66,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.math.Matrix:73,1"
      Dst: "[org.locationtech.jts.math.Matrix].swapRows(double[][],int,int)"
    - Src: "org.locationtech.jts.math.Matrix:74,1"
      Dst: "[org.locationtech.jts.math.Matrix].swapRows(double[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 26
  - functionName: "[org.locationtech.jts.math.Matrix].swapRows(double[][],int,int)"
    functionSourceFile: "org.locationtech.jts.math.Matrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double[][]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Matrix:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:26"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:25"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:30"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.Matrix].swapRows(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.math.Matrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Matrix:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:35"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$6].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$6:134,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$6].itemStateChanged(java.awt.event.ItemEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ItemEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ItemEvent].getStateChange()"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel$6:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel$6:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel$6:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$6:137,1"
      Dst: "[java.awt.event.ItemEvent].getStateChange()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$6:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:266,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.JTextField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:335,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:336,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:351,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.event.ValidPanelEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].fireSetHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:345"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:346,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:347,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.ValidPanelEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:347,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].fireSetHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.event.ValidPanelEvent].<init>(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent:27,1"
      Dst: "[java.util.EventObject].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].fireSetHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[org.locationtech.jtstest.testbuilder.event.ValidPanelListener].setHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:372"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:375"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:371,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:373,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.ValidPanelListener].setHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint"
    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: "org.locationtech.jts.algorithm.InteriorPoint:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.InteriorPoint].dimensionNonEmpty(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointPoint].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPoint:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPoint:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPoint:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPoint:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:62,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPoint].dimensionNonEmpty(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:68,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointPoint].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:71,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:74,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint].dimensionNonEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>(org.locationtech.jts.algorithm.InteriorPoint$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].getDimension()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:80,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>(org.locationtech.jts.algorithm.InteriorPoint$1)"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:82,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>(org.locationtech.jts.algorithm.InteriorPoint$1)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.InteriorPoint$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:85,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter"
    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: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].getDimension()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointPoint].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointPoint].getInteriorPoint()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:37,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:38,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointPoint].getInteriorPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:48,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:49,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointPoint:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointPoint:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointPoint:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointPoint:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:63,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:63,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:67,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:68,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:68,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointPoint].add(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointPoint:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointPoint:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:74,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointPoint:76,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointPoint].getInteriorPoint()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].getInteriorPoint()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:42,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:43,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].getInteriorPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:53,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:54,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:56,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:72,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:76,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:76,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:81,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:81,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].addInterior(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointLine].add(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:88,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].add(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].add(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:120,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointLine:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointLine:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:99,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:103,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:108,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:108,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].addEndpoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointLine].add(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointLine:114,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointLine].add(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointLine].getInteriorPoint()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:83,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:84,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:100,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].processPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:125,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].processPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:129,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:129,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].processPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].process()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getWidth()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getInteriorPoint()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:142,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:143,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].process()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:144,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getWidth()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:147,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getInteriorPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].getScanLineY(org.locationtech.jts.geom.Polygon)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:170,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:172,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].getScanLineY(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].getScanLineY(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].getScanLineY()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:411,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:412,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].getScanLineY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:421,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:425,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:425,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:426,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:427,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea].avg(double,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:72,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].avg(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].avg(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].getScanLineY()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].process(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:431,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:431,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].process(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:432,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:433,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:435,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].process(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].updateInterval(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:444"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:440,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:441,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:442,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:443,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].updateInterval(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder].updateInterval(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:451"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$ScanLineYOrdinateFinder:455"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].process()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].scanRing(org.locationtech.jts.geom.LinearRing,java.util.List)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].findBestMidpoint(java.util.List)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:203,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:208,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:208,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:210,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:211,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:211,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].scanRing(org.locationtech.jts.geom.LinearRing,java.util.List)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:212,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:213,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:215,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].findBestMidpoint(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:132,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 11
    ICount: 7
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:109"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.geom.LineString:108"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:108,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:109,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].scanRing(org.locationtech.jts.geom.LinearRing,java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersectsHorizontalLine(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].addEdgeCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:220,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersectsHorizontalLine(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:223,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:224,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:225,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:227,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].addEdgeCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersectsHorizontalLine(org.locationtech.jts.geom.Envelope,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:341"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:339,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:341,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].addEdgeCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersectsHorizontalLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].isEdgeCrossingCounted(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:234"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:238"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:233,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersectsHorizontalLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:235,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].isEdgeCrossingCounted(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:239,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:240,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:240,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersectsHorizontalLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:359"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:358"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:359"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:358"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:361"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:361"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:356,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].isEdgeCrossingCounted(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:296"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:295"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:289,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:317,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:325,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].findBestMidpoint(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon$compare__1].bootstrap$()"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[java.util.List].get(int)"
    - "[java.lang.Double].doubleValue()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:255"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:253,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:256,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:258,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon$compare__1].bootstrap$()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:258,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:264,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:264,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:271,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon:272,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getWidth()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getInteriorPoint()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint].dimensionNonEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>(org.locationtech.jts.algorithm.InteriorPoint$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].getDimension()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:80,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>(org.locationtech.jts.algorithm.InteriorPoint$1)"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint:82,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter"
    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: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter].insert(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation].<init>(org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:27,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:28,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation].<init>(org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:29,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation].<init>(org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:40,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].buildLine(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 2
    returnType: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:101"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:93"
        BranchSideFuncs:
        - "setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:null"
        BranchSideFuncs:
        - "setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
        - "updateArea()"
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:91,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:94,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:96,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:97,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:113,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:132"
        BranchSideFuncs:
        - "area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:396,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:113,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:132"
        BranchSideFuncs:
        - "area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getArea()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].isLive()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 141
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].remove()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 2
    returnType: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionUses: 1
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:154"
        BranchSideFuncs:
        - "setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:160"
        BranchSideFuncs:
        - "setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
        - "updateArea()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:150,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:151,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:155,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:132"
        BranchSideFuncs:
        - "area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:133,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:168"
        BranchSideFuncs:
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:167"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:171,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 0
    returnType: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.MetadataUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.MetadataUtil"
    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: "org.locationtech.jtstest.geomfunction.MetadataUtil:16,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.MetadataUtil].name(java.lang.'annotation'.Annotation[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.MetadataUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.Metadata].name()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:19"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:26"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:25"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:20"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:19"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:18"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:22"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:19"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:18"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.MetadataUtil:23,1"
      Dst: "[org.locationtech.jtstest.geomfunction.Metadata].name()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.geomfunction.MetadataUtil].title(java.lang.'annotation'.Annotation[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.MetadataUtil"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.Metadata].title()"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:36"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:30"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:30"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:29"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.MetadataUtil:34,1"
      Dst: "[org.locationtech.jtstest.geomfunction.Metadata].title()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.geomfunction.MetadataUtil].isRequired(java.lang.'annotation'.Annotation[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.MetadataUtil"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.Metadata].isRequired()"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:40"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.MetadataUtil:45,1"
      Dst: "[org.locationtech.jtstest.geomfunction.Metadata].isRequired()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$1].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$1:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$000(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$1:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$000(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$000(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoom(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoom(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoom(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:520"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(java.util.Iterator)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 11
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:49"
        BranchSideFuncs:
        - "next()"
        - "computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:44,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:45,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:47,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.geomgraph.Edge:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getEdgeIntersectionList()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 24
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:80"
        BranchSideFuncs:
        - "createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
        - "createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:69"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:58,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:61,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:63,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:67,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:68,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:76,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:77,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:90,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].flip()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:104"
        BranchSideFuncs:
        - "getCoordinate(int)"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:109"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "flip()"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:109"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "flip()"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:105,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:112,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].flip()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:113,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:115,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 18
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:114,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].flip()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:120,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:51,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:52,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 3
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:58"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:57"
        BranchSideFuncs:
        - "quadrant(double,double)"
        - "isTrue(boolean,java.lang.String)"
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:58"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:57"
        BranchSideFuncs:
        - "quadrant(double,double)"
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:62,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:63,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 25
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:135"
        BranchSideFuncs:
        - "getCoordinate(int)"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:135"
        BranchSideFuncs:
        - "getCoordinate(int)"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:141"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:141"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:134,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:136,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:144,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.geomgraph.Edge:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getEdgeIntersectionList()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 24
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:80"
        BranchSideFuncs:
        - "createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
        - "createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:69"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:58,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:61,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].addEndpoints()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:63,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:67,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:68,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:76,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:77,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForPrev(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].flip()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:104"
        BranchSideFuncs:
        - "getCoordinate(int)"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:109"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "flip()"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:109"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "flip()"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:105,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:110,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:112,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].flip()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:113,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:115,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].createEdgeEndForNext(org.locationtech.jts.geomgraph.Edge,java.util.List,org.locationtech.jts.geomgraph.EdgeIntersection,org.locationtech.jts.geomgraph.EdgeIntersection)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    - "org.locationtech.jts.geomgraph.EdgeIntersection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 25
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:135"
        BranchSideFuncs:
        - "getCoordinate(int)"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:135"
        BranchSideFuncs:
        - "getCoordinate(int)"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:141"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:141"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:134,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:136,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:142,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:144,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.TestCaseGeometryFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TestCaseGeometryFunctions"
    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: "org.locationtech.jtstest.function.TestCaseGeometryFunctions:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TestCaseGeometryFunctions].bufferMitredJoin(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.TestCaseGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 26
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].setJoinStyle(int)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TestCaseGeometryFunctions:39,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - Src: "org.locationtech.jtstest.function.TestCaseGeometryFunctions:40,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].setJoinStyle(int)"
    - Src: "org.locationtech.jtstest.function.TestCaseGeometryFunctions:42,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferParameters:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].setJoinStyle(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:200,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:201,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:329,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:366,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 371
    functionDepth: 23
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferOriginalPrecision()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision()"
    functionUses: 1
    ICount: 15
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:374"
        BranchSideFuncs:
        - "getFactory()"
        - "getType()"
        - "getPrecisionModel()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:379"
        BranchSideFuncs:
        - "bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:378"
        BranchSideFuncs:
        - "bufferReducedPrecision()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:372,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOriginalPrecision()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:375,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:375,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:376,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:377,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:379,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOriginalPrecision()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 413
    functionDepth: 20
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:414,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:415,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 426
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.buffer.BufferBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].<init>(org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].setInvertOrientation(boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:427,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].<init>(org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:428,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].setInvertOrientation(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].<init>(org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:94,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:83,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:38,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].setInvertOrientation(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].<init>(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].setInvertOrientation(boolean)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].getCurves()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].createEmptyResultGeometry()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 47
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:139"
        BranchSideFuncs:
        - "getPrecisionModel()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:138"
        BranchSideFuncs:
        - "getFactory()"
        - "<init>(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
        - "getCurves()"
        - "setInvertOrientation(boolean)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:167"
        BranchSideFuncs:
        - "addEdges(java.util.List)"
        - "<init>(org.locationtech.jts.geom.GeometryFactory)"
        - "createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
        - "getPolygons()"
        - "getEdges()"
        - "computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
        - "<init>(org.locationtech.jts.geomgraph.NodeFactory)"
        - "<init>()"
        - "buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:183"
        BranchSideFuncs:
        - "createEmptyResultGeometry()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:182"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:141,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].<init>(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:142,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].setInvertOrientation(boolean)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:144,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].getCurves()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:147,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:148,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].createEmptyResultGeometry()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:168,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:170,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:170,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:171,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:171,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:173,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:174,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:175,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:176,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:183,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].<init>(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:55,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:67,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].setInvertOrientation(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].getCurves()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 18
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:111,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 46
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:138"
        BranchSideFuncs:
        - "addPolygon(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:140"
        BranchSideFuncs:
        - "addLineString(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:142"
        BranchSideFuncs:
        - "addPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:141"
        BranchSideFuncs:
        - "addPoint(org.locationtech.jts.geom.Point)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:146"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:145"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:137,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:139,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:141,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:142,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:143,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:147,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:147,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:147,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].clean(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isErodedCompletely(org.locationtech.jts.geom.LinearRing,double)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingSide(org.locationtech.jts.geom.Coordinate[],double,int,int,int)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Position].opposite(int)"
    functionUses: 1
    ICount: 54
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:216"
        BranchSideFuncs:
        - "getExteriorRing()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:223"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:223"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:226"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:226"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:217,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:218,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:218,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].clean(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:221,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isErodedCompletely(org.locationtech.jts.geom.LinearRing,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:227,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingSide(org.locationtech.jts.geom.Coordinate[],double,int,int,int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:234,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:236,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:250,1"
      Dst: "[org.locationtech.jts.geom.Position].opposite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].clean(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 204
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:205,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 2
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:440"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:439"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:445"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:444"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:443"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:442"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:439,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:440,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:442,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:443,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:425"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:420"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:418"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:419,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:421,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Coordinate].isValid()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isFinite(double)"
    functionUses: 3
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:277,1"
      Dst: "[java.lang.Double].isFinite(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isErodedCompletely(org.locationtech.jts.geom.LinearRing,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isTriangleErodedCompletely(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 2
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:423"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:422"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:418"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:427"
        BranchSideFuncs:
        - "isTriangleErodedCompletely(org.locationtech.jts.geom.Coordinate[],double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:426"
        BranchSideFuncs:
        - "getWidth()"
        - "getEnvelopeInternal()"
        - "getHeight()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:432"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:416,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:424,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isTriangleErodedCompletely(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:427,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:428,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:428,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:428,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:430,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isTriangleErodedCompletely(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 456
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Triangle].inCentre()"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:456"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "inCentre()"
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:457,1"
      Dst: "[org.locationtech.jts.geom.Triangle].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:458,1"
      Dst: "[org.locationtech.jts.geom.Triangle].inCentre()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:459,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:460,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Triangle].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 519
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:520,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].inCentre()"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 536
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:537,1"
      Dst: "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 2
    ICount: 29
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:286,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingSide(org.locationtech.jts.geom.Coordinate[],double,int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 284
    functionDepth: 14
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isRingCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Position].opposite(int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getRingCurve(org.locationtech.jts.geom.Coordinate[],int,double)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isRingCurveInverted(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 4
    ICount: 27
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:287"
        BranchSideFuncs:
        - "isRingCCW(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:287"
        BranchSideFuncs:
        - "isRingCCW(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:296"
        BranchSideFuncs:
        - "getRingCurve(org.locationtech.jts.geom.Coordinate[],int,double)"
        - "isRingCurveInverted(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:296"
        BranchSideFuncs:
        - "getRingCurve(org.locationtech.jts.geom.Coordinate[],int,double)"
        - "isRingCurveInverted(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:306"
        BranchSideFuncs:
        - "addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:290,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isRingCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:295,1"
      Dst: "[org.locationtech.jts.geom.Position].opposite(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:297,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getRingCurve(org.locationtech.jts.geom.Coordinate[],int,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:303,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isRingCurveInverted(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isRingCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].isCCWArea(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:95"
        BranchSideFuncs:
        - "isCCWArea(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:96,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCWArea(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCWArea(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:260"
        BranchSideFuncs:
        - "ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:261,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Area:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Area:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Area:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:71"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Position].opposite(int)"
    functionSourceFile: "org.locationtech.jts.geom.Position"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Position:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Position:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Position:37"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Position:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Position:39"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Position:38"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getRingCurve(org.locationtech.jts.geom.Coordinate[],int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:135"
        BranchSideFuncs:
        - "getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:138"
        BranchSideFuncs:
        - "copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:137"
        BranchSideFuncs:
        - "computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
        - "getCoordinates()"
        - "getSegGen(double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:132,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:136,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:138,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:139,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:140,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 28
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:78"
        BranchSideFuncs:
        - "getSegGen(double)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85"
        BranchSideFuncs:
        - "computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:84"
        BranchSideFuncs:
        - "isSingleSided()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:89"
        BranchSideFuncs:
        - "computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:86"
        BranchSideFuncs:
        - "computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:77,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:79,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:80,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:82,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:87,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:90,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:93,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:113"
        BranchSideFuncs:
        - "isSingleSided()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 286
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 5
    returnType: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters,double)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:177,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getQuadrantSegments()"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getJoinStyle()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].init(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 41
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:117"
        BranchSideFuncs:
        - "getQuadrantSegments()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:116"
        BranchSideFuncs:
        - "getQuadrantSegments()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:127"
        BranchSideFuncs:
        - "getJoinStyle()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:126"
        BranchSideFuncs:
        - "init(double)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:126"
        BranchSideFuncs:
        - "init(double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:99,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:113,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:115,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getQuadrantSegments()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:125,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getJoinStyle()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:127,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].init(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].getQuadrantSegments()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 147
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].getJoinStyle()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 213
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].init(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].<init>()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setMinimumVertexDistance(double)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].cos(double)"
    functionUses: 1
    ICount: 22
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:149,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:150,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:151,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:152,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:156,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setMinimumVertexDistance(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setMinimumVertexDistance(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createCircle(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createSquare(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:193,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:195,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createCircle(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:198,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createSquare(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 191
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createCircle(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 655
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:656,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:657,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:658,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:659,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].isRedundant(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 35
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:60,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:61,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:63,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].isRedundant(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:65,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].isRedundant(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:94"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:93,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:95,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:96,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 630
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 45
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:631"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:631"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:630"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:638"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:642"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:647"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:633,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:641,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:644,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:645,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:646,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 340
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:341,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:342,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:329,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:330,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 3
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:105"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:104"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:104,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:105,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:105,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:107,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:108,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createSquare(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 666
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    functionUses: 1
    ICount: 45
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:667,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:667,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:671,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addSegments(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    functionUses: 1
    ICount: 42
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:265"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "addSegments(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "addFirstSegment()"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:280"
        BranchSideFuncs:
        - "closeRing()"
        - "addLastSegment()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:244,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:248,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addSegments(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:252,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:258,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:259,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:261,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:281,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:282,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getSimplifyFactor()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:189,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getSimplifyFactor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].getSimplifyFactor()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 295
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addSegments(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPts(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:182,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPts(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPts(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:76"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:73,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:69,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:70,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:173"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].deleteShallowConcavities()"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].collapseLine()"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:108"
        BranchSideFuncs:
        - "deleteShallowConcavities()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:99,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:109,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].deleteShallowConcavities()"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:112,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].collapseLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].deleteShallowConcavities()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 8
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].nextIndex(int)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isDeletable(int,int,int,double)"
    functionUses: 1
    ICount: 33
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:130,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].nextIndex(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:137,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isDeletable(int,int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].nextIndex(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:165"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isDeletable(int,int,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 7
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isConcave(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:186"
        BranchSideFuncs:
        - "isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:185"
        BranchSideFuncs:
        - "isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:187"
        BranchSideFuncs:
        - "isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:185,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isConcave(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:186,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:188,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isConcave(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:224"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:225,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:218"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:219,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 3
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:214"
        BranchSideFuncs:
        - "isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:212,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].collapseLine()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:175"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:170"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:171,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:174,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:176,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    functionUses: 7
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:166,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 397
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "int"
    - "double"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 5
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:401,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:187,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCollinear(boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addOutsideTurn(int,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addInsideTurn(int,boolean)"
    functionUses: 7
    ICount: 53
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:222"
        BranchSideFuncs:
        - "addCollinear(boolean)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:226"
        BranchSideFuncs:
        - "addInsideTurn(int,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:206,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:207,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:212,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:214,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:220,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCollinear(boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:224,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addOutsideTurn(int,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:227,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addInsideTurn(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCollinear(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getJoinStyle()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCornerFillet(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double)"
    functionUses: 1
    ICount: 36
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:256"
        BranchSideFuncs:
        - "getJoinStyle()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:259"
        BranchSideFuncs:
        - "addCornerFillet(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:257"
        BranchSideFuncs:
        - "addPt(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:256"
        BranchSideFuncs:
        - "addPt(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:237,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:238,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:254,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getJoinStyle()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:256,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:260,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCornerFillet(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCornerFillet(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 2
    ICount: 38
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:613"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:612"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:610"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:614"
        BranchSideFuncs:
        - "addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
        - "addPt(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:613"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:614"
        BranchSideFuncs:
        - "addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
        - "addPt(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:604,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:615,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:616,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addOutsideTurn(int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getJoinStyle()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addMitreJoin(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCornerFillet(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double)"
    functionUses: 1
    ICount: 63
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:283"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:294"
        BranchSideFuncs:
        - "addMitreJoin(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:293"
        BranchSideFuncs:
        - "getJoinStyle()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:299"
        BranchSideFuncs:
        - "addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:301"
        BranchSideFuncs:
        - "addCornerFillet(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double)"
        - "addPt(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:282,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:287,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:291,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getJoinStyle()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:292,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addMitreJoin(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:295,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:302,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCornerFillet(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addMitreJoin(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 475
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getMitreLimit()"
    - "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLimitedMitreJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double,double)"
    functionUses: 1
    ICount: 31
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:495"
        BranchSideFuncs:
        - "addPt(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:494"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:495"
        BranchSideFuncs:
        - "addPt(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:494"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:496"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:503"
        BranchSideFuncs:
        - "addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:502"
        BranchSideFuncs:
        - "addLimitedMitreJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double,double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:476,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getMitreLimit()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:486,1"
      Dst: "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:487,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:488,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:495,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:497,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:503,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLimitedMitreJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].getMitreLimit()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Intersection"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Intersection:47,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 585
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:586,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLimitedMitreJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 522
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].normalize(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].project(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.algorithm.Intersection].lineSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionUses: 1
    ICount: 40
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:558"
        BranchSideFuncs:
        - "addPt(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:557"
        BranchSideFuncs:
        - "addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:558"
        BranchSideFuncs:
        - "addPt(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:557"
        BranchSideFuncs:
        - "addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:525,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:530,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:531,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].normalize(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:534,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].project(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:544,1"
      Dst: "[org.locationtech.jts.algorithm.Intersection].lineSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:549,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:558,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addBevelJoin(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Angle:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:172,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 4
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:78,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].normalize(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 251
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Angle:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:255"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].project(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 569
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 3
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:570,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:571,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:572,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Intersection].lineSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Intersection"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 28
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Intersection:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:139"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:153"
        BranchSideFuncs:
        - "intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:153"
        BranchSideFuncs:
        - "intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:160"
        BranchSideFuncs:
        - "pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:165"
        BranchSideFuncs:
        - "copy()"
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Intersection:137,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Intersection:138,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.Intersection:154,1"
      Dst: "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Intersection:161,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 2
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:219,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:219,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addInsideTurn(int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 316
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 112
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:350"
        BranchSideFuncs:
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:349"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:356"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:376"
        BranchSideFuncs:
        - "<init>(double,double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:375"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:317,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:318,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:319,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:319,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:352,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:363,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:195,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:177,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 205
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLineEndCap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    functionUses: 1
    ICount: 43
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:218"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:234"
        BranchSideFuncs:
        - "addLineEndCap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "closeRing()"
        - "addLastSegment()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:206,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:210,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:215,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:217,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:219,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:221,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLineEndCap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:239,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLineEndCap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[java.lang.Math].atan2(double,double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 2
    ICount: 79
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:416,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:418,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:419,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:425,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:427,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:430,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:431,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addDirectedFillet(org.locationtech.jts.geom.Coordinate,double,double,int,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:441,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:442,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:442,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:443,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:445,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:171,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:126,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 323
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    functionUses: 1
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:327"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:336"
        BranchSideFuncs:
        - "closeRing()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:333"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:324,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:328,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:332,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:335,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:337,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].isRingCurveInverted(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 336
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].hasPointOnBuffer(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:345"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:353"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:358"
        BranchSideFuncs:
        - "hasPointOnBuffer(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:363"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:362"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:359,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].hasPointOnBuffer(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].hasPointOnBuffer(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegmentString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineSegment].midPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 31
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:385"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:390"
        BranchSideFuncs:
        - "midPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "pointToSegmentString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:378"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:377"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:378,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:384,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegmentString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:392,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].midPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegmentString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:123"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Distance:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:131"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:123"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:121,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.Distance:124,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:126,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineSegment].midPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:236,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int,int,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:128"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "<init>(int,int,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:129,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int,int,int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:129,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:131,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(int,int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int,int,int)"
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocations(int,int,int)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 26
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:103,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.Label:105,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocations(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:69,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:34,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].clean(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getBufferParameters()"
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingBothSides(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:175"
        BranchSideFuncs:
        - "isRing(org.locationtech.jts.geom.Coordinate[])"
        - "getBufferParameters()"
        - "getCoordinates()"
        - "clean(org.locationtech.jts.geom.Coordinate[])"
        - "isSingleSided()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:190"
        BranchSideFuncs:
        - "addRingBothSides(org.locationtech.jts.geom.Coordinate[],double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:189"
        BranchSideFuncs:
        - "getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
        - "addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:190"
        BranchSideFuncs:
        - "addRingBothSides(org.locationtech.jts.geom.Coordinate[],double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:189"
        BranchSideFuncs:
        - "getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
        - "addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:174,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:176,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:176,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].clean(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:186,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:186,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getBufferParameters()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:186,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:187,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingBothSides(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:190,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:191,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getBufferParameters()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.buffer.BufferParameters"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingBothSides(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 257
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingSide(org.locationtech.jts.geom.Coordinate[],double,int,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:258,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addRingSide(org.locationtech.jts.geom.Coordinate[],double,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:163"
        BranchSideFuncs:
        - "getCoordinates()"
        - "isValid()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:167"
        BranchSideFuncs:
        - "getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
        - "addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:167"
        BranchSideFuncs:
        - "getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
        - "addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:164,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:166,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:168,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:169,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCurve(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionUses: 7
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:73"
        BranchSideFuncs:
        - "isEmpty()"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.geom.Point:72"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:73,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:74,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 4
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:151,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:152,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferCurveSetBuilder:153,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].createEmptyResultGeometry()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 349
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:350,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 205
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].getNoder(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SimpleNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.IteratedNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ValidatingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ScaledNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SimpleNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ScaledNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.IteratedNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ValidatingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 34
    EdgeCount: 70
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:218"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "checkValid()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:217"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:234"
        BranchSideFuncs:
        - "next()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:228"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
        - "getData()"
        - "getCoordinates()"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:228"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
        - "getData()"
        - "getCoordinates()"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:206,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].getNoder(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:207,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:208,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:211,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:212,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:218,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:218,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:219,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:225,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:226,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:229,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:230,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:230,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:231,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].getNoder(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:191"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.algorithm.LineIntersector)"
        - "setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
        - "<init>()"
        - "setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:192,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:193,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:194,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:195,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:195,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.FastNodingValidator].getErrorMessage()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersection()"
    functionUses: 3
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.FastNodingValidator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:140"
        BranchSideFuncs:
        - "getIntersection()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
        - "getErrorMessage()"
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:137,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].getErrorMessage()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersection()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 18
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:114,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].<init>(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Depth].<init>()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    functionUses: 5
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:56,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:48,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].<init>(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.Edge:52,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].flip()"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].depthDelta(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    - "[org.locationtech.jts.geomgraph.Edge].setDepthDelta(int)"
    - "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    functionUses: 1
    ICount: 26
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:270"
        BranchSideFuncs:
        - "isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:269"
        BranchSideFuncs:
        - "depthDelta(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "add(org.locationtech.jts.geomgraph.Edge)"
        - "setDepthDelta(int)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:259"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "flip()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:258"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "getDepthDelta()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:246,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:250,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:255,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:256,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:257,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].flip()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:259,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:262,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].depthDelta(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:263,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:265,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].setDepthDelta(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:270,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:73,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:73,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:75,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:270"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:266,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Label].flip()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:120,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - "[org.locationtech.jts.geomgraph.TopologyLocation].merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    functionUses: 4
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Label:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Label:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:160"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
      - BranchSide: "org.locationtech.jts.geomgraph.Label:159"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    - Branch String: "org.locationtech.jts.geomgraph.Label:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:160"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
      - BranchSide: "org.locationtech.jts.geomgraph.Label:159"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:157,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - Src: "org.locationtech.jts.geomgraph.Label:160,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].depthDelta(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:68,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 22
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:124,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 94
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].setDepthDelta(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 95
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:51,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:51,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:52,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayNodeFactory"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayNodeFactory:29,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.NodeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:65,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:70,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "java.util.List"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 19
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:131"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
        - "<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
        - "add(org.locationtech.jts.geomgraph.EdgeEnd)"
        - "setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:119,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:119,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:121,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:123,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:125,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:128,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.PlanarGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isVisited()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].<init>()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].create(org.locationtech.jts.geomgraph.Node)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].reverseOrder()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    functionUses: 1
    ICount: 20
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:292"
        BranchSideFuncs:
        - "next()"
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:285"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geomgraph.Node)"
        - "<init>()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:277,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:278,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:278,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:278,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:279,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:280,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isVisited()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:281,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:282,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].create(org.locationtech.jts.geomgraph.Node)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:283,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:292,1"
      Dst: "[java.util.Collections].reverseOrder()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:292,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].values()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:99,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:56,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:57,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].create(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].addReachable(org.locationtech.jts.geomgraph.Node)"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findEdge(java.util.List)"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getCoordinate()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:101,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].addReachable(org.locationtech.jts.geomgraph.Node)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:102,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findEdge(java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:103,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].addReachable(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].add(org.locationtech.jts.geomgraph.Node,java.util.Stack)"
    - "[java.util.Stack].<init>()"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:120"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geomgraph.Node,java.util.Stack)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:114,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:115,1"
      Dst: "[java.util.Vector].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:116,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:117,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:118,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].add(org.locationtech.jts.geomgraph.Node,java.util.Stack)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].add(org.locationtech.jts.geomgraph.Node,java.util.Stack)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    - "java.util.Stack"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.GraphComponent].setVisited(boolean)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isVisited()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Stack].push(java.lang.Object)"
    functionUses: 1
    ICount: 22
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:143"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
        - "getSym()"
        - "getNode()"
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:129,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].setVisited(boolean)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:130,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:131,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:131,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:131,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:132,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:134,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:135,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:141,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isVisited()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:141,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeEndStar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findEdge(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtNode()"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtVertex()"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSide(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 38
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
        BranchSideFuncs:
        - "next()"
        - "isForward()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:69"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:62"
        BranchSideFuncs:
        - "checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:69"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:69"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:75"
        BranchSideFuncs:
        - "findRightmostEdgeAtNode()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:74"
        BranchSideFuncs:
        - "findRightmostEdgeAtVertex()"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:86"
        BranchSideFuncs:
        - "getSym()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:59,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:60,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:61,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:63,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:72,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtNode()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:75,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtVertex()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:82,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSide(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:84,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 132
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    functionUses: 2
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:128"
        BranchSideFuncs:
        - "getEdge()"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:129,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:129,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtNode()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getRightmostEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    functionUses: 1
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:98"
        BranchSideFuncs:
        - "getEdge()"
        - "getSym()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:89,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:90,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:91,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getRightmostEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:94,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:95,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:96,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:96,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getRightmostEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 2
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getQuadrant()"
    - "[org.locationtech.jts.geom.Quadrant].isNorthern(int)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getDy()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 34
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:81"
        BranchSideFuncs:
        - "getQuadrant()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:80"
        BranchSideFuncs:
        - "getQuadrant()"
        - "get(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:86"
        BranchSideFuncs:
        - "isNorthern(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:86"
        BranchSideFuncs:
        - "isNorthern(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:94"
        BranchSideFuncs:
        - "getDy()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:97"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:76,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:77,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:79,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:83,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getQuadrant()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:85,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].isNorthern(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getDy()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:98,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 15
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getQuadrant()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 69
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Quadrant].isNorthern(int)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:130"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getDy()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtVertex()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 57
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:105"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdge()"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:105"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdge()"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:107,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:110,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSide(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:147"
        BranchSideFuncs:
        - "getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:144,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:152,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionUses: 2
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:159,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:160,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.operation.overlay.PolygonBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getRightmostCoordinate()"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].<init>(java.util.List)"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].getDepth(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepth(int)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].findResultEdges()"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getDirectedEdges()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getNodes()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 22
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:327"
        BranchSideFuncs:
        - "getRightmostCoordinate()"
        - "getDirectedEdges()"
        - "computeDepth(int)"
        - "getDepth(org.locationtech.jts.geom.Coordinate)"
        - "next()"
        - "getNodes()"
        - "findResultEdges()"
        - "add(java.util.Collection,java.util.Collection)"
        - "<init>(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:306,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:307,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:307,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:308,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:309,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getRightmostCoordinate()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:313,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:314,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].getDepth(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:316,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepth(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:323,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].findResultEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:324,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getDirectedEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getNodes()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getRightmostCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:39,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].getDepth(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 9
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].access$000(org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment)"
    - "[java.util.List].size()"
    - "[java.util.Collections].min(java.util.Collection)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:51"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:48,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:50,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:52,1"
      Dst: "[java.util.Collections].min(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:53,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].access$000(org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getDirectedEdges()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 26
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:77"
        BranchSideFuncs:
        - "next()"
        - "getEnvelope()"
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:76"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:65"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:64"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:74"
        BranchSideFuncs:
        - "getDirectedEdges()"
        - "findStabbedSegments(org.locationtech.jts.geom.Coordinate,java.util.List,java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:65,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:66,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:66,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:67,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:70,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getEnvelope()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:71,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:72,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:75,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getDirectedEdges()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:75,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate,java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 25
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:82"
        BranchSideFuncs:
        - "hasNext()"
        - "<init>()"
        - "iterator()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:80"
        BranchSideFuncs:
        - "getEdge()"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:72,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:73,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:75,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:75,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 31
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:447"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:446"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:440,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 59
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate,java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.DirectedEdge,java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:102"
        BranchSideFuncs:
        - "next()"
        - "isForward()"
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:100"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:99"
        BranchSideFuncs:
        - "findStabbedSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.DirectedEdge,java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:96,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:96,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:97,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:98,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:100,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.DirectedEdge,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].findStabbedSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.DirectedEdge,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geom.LineSegment].reverse()"
    - "[org.locationtech.jts.geom.LineSegment].isHorizontal()"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].<init>(org.locationtech.jts.geom.LineSegment,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.lang.Math].max(double,double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 81
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:125"
        BranchSideFuncs:
        - "reverse()"
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:129"
        BranchSideFuncs:
        - "isHorizontal()"
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:115"
        BranchSideFuncs:
        - "getEdge()"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:137"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:142"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:147"
        BranchSideFuncs:
        - "getDepth(int)"
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:146"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geom.LineSegment,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:116,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:116,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:122,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].reverse()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:125,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:130,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].isHorizontal()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:138,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:143,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:145,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:147,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].<init>(org.locationtech.jts.geom.LineSegment,int)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater:148,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[org.locationtech.jts.geom.LineSegment].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].isHorizontal()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:125"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].<init>(org.locationtech.jts.geom.LineSegment,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:164,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:166,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:54,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].access$000(org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepth(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].clearVisitedEdges()"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getEdge()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeDepths(int,int)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].copySymDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionUses: 1
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:155,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].clearVisitedEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:157,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:158,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:159,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:161,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeDepths(int,int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:162,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].copySymDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:165,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].clearVisitedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:151"
        BranchSideFuncs:
        - "next()"
        - "setVisited(boolean)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:147,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:147,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:148,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:149,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getEdge()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Label"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeDepths(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geom.Position].opposite(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setDepth(int,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:211"
        BranchSideFuncs:
        - "opposite(int)"
        - "setDepth(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:204,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:204,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:212,1"
      Dst: "[org.locationtech.jts.geom.Position].opposite(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:216,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setDepth(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setDepth(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:104"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:101,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:101,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.TopologyException:39,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].copySymDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setDepth(int,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:235,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:236,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:236,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setDepth(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 174
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeNodeDepth(org.locationtech.jts.geomgraph.Node)"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.LinkedList].<init>()"
    - "[java.util.LinkedList].addLast(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.LinkedList].removeFirst()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 1
    ICount: 35
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:202"
        BranchSideFuncs:
        - "next()"
        - "getSym()"
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:196"
        BranchSideFuncs:
        - "getNode()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:195"
        BranchSideFuncs:
        - "getNode()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:175,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:176,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:178,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:179,1"
      Dst: "[java.util.LinkedList].addLast(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:180,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:181,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:183,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:185,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:188,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeNodeDepth(org.locationtech.jts.geomgraph.Node)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:192,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:192,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:192,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:193,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:194,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:195,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:197,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeNodeDepth(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].copySymDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[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: 42
    EdgeCount: 77
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:220"
        BranchSideFuncs:
        - "getSym()"
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:223"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:222"
        BranchSideFuncs:
        - "getEdges()"
        - "hasNext()"
        - "iterator()"
        - "computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:231"
        BranchSideFuncs:
        - "copySymDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
        - "next()"
        - "setVisited(boolean)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:209,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:209,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:209,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:210,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:211,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:211,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:221,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:221,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:221,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:221,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:221,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:221,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:223,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:228,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setVisited(boolean)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:229,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].copySymDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isVisited()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:33,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].findIndex(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(int,int,int)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[java.util.List].size()"
    - "[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: 21
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:357"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:345,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].findIndex(org.locationtech.jts.geomgraph.EdgeEnd)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:346,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:349,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:349,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 365
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeDepths(int,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:371"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:368,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:369,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeDepths(int,int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:370,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].findResultEdges()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 16
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:267"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:266"
        BranchSideFuncs:
        - "getDepth(int)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:266"
        BranchSideFuncs:
        - "isInteriorAreaEdge()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferSubgraph:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:266"
        BranchSideFuncs:
        - "setInResult(boolean)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferSubgraph:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:250,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:250,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:251,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:260,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:262,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - Src: "org.locationtech.jts.operation.buffer.BufferSubgraph:263,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:181"
        BranchSideFuncs:
        - "isArea(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:178"
        BranchSideFuncs:
        - "getLocation(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:175,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:176,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getNodes()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferSubgraph"
    linkageType: null
    functionLinenumber: 60
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].linkResultDirectedEdges(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMaximalEdgeRings(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMinimalEdgeRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].sortShellsAndHoles(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:66,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].linkResultDirectedEdges(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:67,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMaximalEdgeRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:68,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:69,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].buildMinimalEdgeRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:70,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].sortShellsAndHoles(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:71,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PolygonBuilder"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].computePolygons(java.util.List)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PolygonBuilder:77,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].computePolygons(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getType()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel$Type"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 20
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].setWorkingPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 2
    ICount: 17
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:447,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:447,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:448,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:448,1"
      Dst: "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:450,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:451,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].setWorkingPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:452,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:454,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:73,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:45,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:49,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:104,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double)"
    functionSourceFile: "org.locationtech.jts.noding.ScaledNoder"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double,double,double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ScaledNoder:47,1"
      Dst: "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double,double,double)"
    functionSourceFile: "org.locationtech.jts.noding.ScaledNoder"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.ScaledNoder].isIntegerPrecision()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.ScaledNoder:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.ScaledNoder:50"
        BranchSideFuncs:
        - "isIntegerPrecision()"
      - BranchSide: "org.locationtech.jts.noding.ScaledNoder:49"
        BranchSideFuncs:
        - "isIntegerPrecision()"
    Callsites:
    - Src: "org.locationtech.jts.noding.ScaledNoder:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.ScaledNoder:54,1"
      Dst: "[org.locationtech.jts.noding.ScaledNoder].isIntegerPrecision()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.ScaledNoder].isIntegerPrecision()"
    functionSourceFile: "org.locationtech.jts.noding.ScaledNoder"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.ScaledNoder:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.ScaledNoder:56"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].setWorkingPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].setNoder(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 384
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:385"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:394"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:387,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 21
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].precisionScaleFactor(org.locationtech.jts.geom.Geometry,double,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:403,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].precisionScaleFactor(org.locationtech.jts.geom.Geometry,double,int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:406,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:407,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].precisionScaleFactor(org.locationtech.jts.geom.Geometry,double,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 1
    ICount: 30
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:133"
        BranchSideFuncs:
        - "max(double,double,double,double)"
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:136,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:136,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:137,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:138,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:139,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:135,1"
      Dst: "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:146,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:149,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:140"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.TestCaseGeometryFunctions].densify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.TestCaseGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.densify.Densifier].densify(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TestCaseGeometryFunctions:47,1"
      Dst: "[org.locationtech.jts.densify.Densifier].densify(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].densify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.densify.Densifier].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.densify.Densifier].getResultGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:54,1"
      Dst: "[org.locationtech.jts.densify.Densifier].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.densify.Densifier:55,1"
      Dst: "[org.locationtech.jts.densify.Densifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.densify.Densifier:56,1"
      Dst: "[org.locationtech.jts.densify.Densifier].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:113,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.densify.Densifier:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier: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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.densify.Densifier].getResultGeometry()"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].<init>(double,boolean)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:146,1"
      Dst: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].<init>(double,boolean)"
    - Src: "org.locationtech.jts.densify.Densifier:146,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].<init>(double,boolean)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:153,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - "[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: 55
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:120"
        BranchSideFuncs:
        - "transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:122"
        BranchSideFuncs:
        - "transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:124"
        BranchSideFuncs:
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:126"
        BranchSideFuncs:
        - "transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:128"
        BranchSideFuncs:
        - "transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:130"
        BranchSideFuncs:
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:132"
        BranchSideFuncs:
        - "transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:135"
        BranchSideFuncs:
        - "transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:119,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:123,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:127,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:129,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:131,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:133,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 8
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:179,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:179,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:178,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].copy(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:174,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].copy(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].copy(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    functionUses: 1
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:157,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 27
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:190"
        BranchSideFuncs:
        - "transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
        - "getGeometryN(int)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:187"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:186"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:193"
        BranchSideFuncs:
        - "createMultiPoint()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:192"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:183,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:184,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:185,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:185,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:187,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:188,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:190,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:191,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 388
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:389,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 5
    ICount: 20
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:212"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:217"
        BranchSideFuncs:
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:216"
        BranchSideFuncs:
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:217"
        BranchSideFuncs:
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:216"
        BranchSideFuncs:
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:217"
        BranchSideFuncs:
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:216"
        BranchSideFuncs:
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:210,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:210,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:213,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:216,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 8
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:230,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:230,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:229,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 27
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:241"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:238"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:237"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:244"
        BranchSideFuncs:
        - "createMultiLineString()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:243"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:234,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:236,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:238,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:239,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:241,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:242,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:244,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:291,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 247
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 5
    ICount: 58
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:257"
        BranchSideFuncs:
        - "createPolygon()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:257"
        BranchSideFuncs:
        - "createPolygon()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:259"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:272"
        BranchSideFuncs:
        - "isEmpty()"
        - "getInteriorRingN(int)"
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:259"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:278"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:277"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:249,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:249,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:252,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:253,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:254,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:260,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:261,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:262,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:269,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:274,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:273,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:277,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:278,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:279,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 24
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 283
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    functionUses: 4
    ICount: 27
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:291"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:288"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:287"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:294"
        BranchSideFuncs:
        - "createMultiPolygon()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:293"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:284,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:285,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:286,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:286,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:288,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:289,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:291,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:292,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:294,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 330
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:331,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 29
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:305"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "transform(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:302"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:301"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:307"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:306"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:298,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:299,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:300,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:300,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:302,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:303,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:307,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TestCaseGeometryFunctions].minClearance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TestCaseGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TestCaseGeometryFunctions:52,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.MinimumClearance].getDistance()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:115,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:116,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:145,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].getDistance()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:161,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].compute()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>(org.locationtech.jts.precision.MinimumClearance$1)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].getCoordinates()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.precision.MinimumClearance:199,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:201,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>(org.locationtech.jts.precision.MinimumClearance$1)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:201,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:203,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:206,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:35,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:36,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:38,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:185,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:52,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:54,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:85,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 31
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:447"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:446"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:440,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>(org.locationtech.jts.precision.MinimumClearance$1)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.MinimumClearance$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:228,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    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: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:228,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:298,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:301,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:301,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:302,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:48,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[org.locationtech.jts.index.strtree.ItemDistance].distance(org.locationtech.jts.index.strtree.ItemBoundable,org.locationtech.jts.index.strtree.ItemBoundable)"
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:89,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:90,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemDistance].distance(org.locationtech.jts.index.strtree.ItemBoundable,org.locationtech.jts.index.strtree.ItemBoundable)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:94,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:94,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:128,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 766
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 4
    ICount: 49
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:767"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:768"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:770"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:772"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:771"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:772"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:775"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:774"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:776"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:778"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:777"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:778"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:780"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:781"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:781"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:782"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:783"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:767,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.geom.Envelope:783,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:394"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:401"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:400"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:359,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:360,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:362,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:364,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:365,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:384,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:395,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.PriorityQueue"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].area(org.locationtech.jts.index.strtree.Boundable)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expand(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,boolean,java.util.PriorityQueue,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:161,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:170,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].area(org.locationtech.jts.index.strtree.Boundable)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:171,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expand(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,boolean,java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:188,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].area(org.locationtech.jts.index.strtree.Boundable)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.geom.Envelope].getArea()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:138,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:138,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getArea()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:356,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:356,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].expand(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,boolean,java.util.PriorityQueue,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.Boundable"
    - "boolean"
    - "java.util.PriorityQueue"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractNode].getChildBoundables()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:194,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractNode].getChildBoundables()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:195,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:195,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:196,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:199,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:206,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:207,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.strtree.Boundable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:60"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 34
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:250,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].vertexDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:251,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].size()"
    - Src: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance:253,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].segmentDistance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TestCaseGeometryFunctions].minClearanceLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TestCaseGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TestCaseGeometryFunctions:57,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.MinimumClearance].getLine()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:130,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:131,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:145,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].getLine()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].compute()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:178,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].compute()"
    - Src: "org.locationtech.jts.precision.MinimumClearance:181,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.precision.MinimumClearance:181,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.precision.MinimumClearance:182,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].compute()"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>(org.locationtech.jts.precision.MinimumClearance$1)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].getCoordinates()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.MinimumClearance:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.MinimumClearance:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.MinimumClearance:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.precision.MinimumClearance:199,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:201,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].<init>(org.locationtech.jts.precision.MinimumClearance$1)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:201,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:203,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].distance(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.FacetSequence)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:206,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance$MinClearanceDistance].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$12].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$12"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies$12:446,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$12].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Double].valueOf(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$12:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$12:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$12:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$12:451,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$12:451,1"
      Dst: "[java.lang.Double].valueOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    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: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].difference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:29,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:29,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:41,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:42,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:64,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingPointIndex"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:42,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ValidatingNoder:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 450
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 4
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEnvDisjoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmpty(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:166,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEnvDisjoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:170,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmpty(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEnvDisjoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmpty(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Envelope].disjoint(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isDisjoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:197"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:196"
        BranchSideFuncs:
        - "isEmpty(org.locationtech.jts.geom.Geometry)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:198"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:197"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:201"
        BranchSideFuncs:
        - "disjoint(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:200"
        BranchSideFuncs:
        - "isDisjoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
        - "getEnvelopeInternal()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:197,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmpty(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:198,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:199,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:199,1"
      Dst: "[org.locationtech.jts.geom.Envelope].disjoint(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:201,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isDisjoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 5
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:182"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:182"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:183,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:44"
        BranchSideFuncs:
        - "isFloating()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:43"
        BranchSideFuncs:
        - "isFloating()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:44,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:224"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].disjoint(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 597
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:598"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:597"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:598,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isDisjoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionUses: 1
    ICount: 36
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:216"
        BranchSideFuncs:
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:215"
        BranchSideFuncs:
        - "getMaxX()"
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:218"
        BranchSideFuncs:
        - "makePrecise(double)"
        - "getMaxY()"
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:217"
        BranchSideFuncs:
        - "makePrecise(double)"
        - "getMaxY()"
        - "getMinY()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:215,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:215,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:215,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:217,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:217,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 644
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultDimension(int,int,int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:645,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:644,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultDimension(int,int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:643,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 9
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:48"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:47"
        BranchSideFuncs:
        - "getDimension()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultDimension(int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:280,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:283,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:238,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:241,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:244,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:247,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:250,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:311,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.overlayng.ElevationModel"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].<init>(org.locationtech.jts.geom.Envelope,int,int)"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:62"
        BranchSideFuncs:
        - "expandToInclude(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:61"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Envelope,int,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:64"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:63"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Geometry)"
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:58,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:60,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].<init>(org.locationtech.jts.geom.Envelope,int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:63,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:211,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:165,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:166,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 241
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel].<init>(org.locationtech.jts.geom.Envelope,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 32
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:85,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:90,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:91,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].<init>(org.locationtech.jts.operation.overlayng.ElevationModel)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 2
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:107,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel$1].<init>(org.locationtech.jts.operation.overlayng.ElevationModel)"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel$1].<init>(org.locationtech.jts.operation.overlayng.ElevationModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel$1"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.ElevationModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel$1:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:-1"
        BranchSideFuncs:
        - "getDimension(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:-1"
        BranchSideFuncs:
        - "getDimension(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:86,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:55,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:56,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:74,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].buildPointMap(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeIntersection(java.util.Map,java.util.Map,java.util.ArrayList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeUnion(java.util.Map,java.util.Map,java.util.ArrayList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeDifference(java.util.Map,java.util.Map,java.util.ArrayList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].isEmpty()"
    functionUses: 1
    ICount: 33
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:110"
        BranchSideFuncs:
        - "createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:109"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:88,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].buildPointMap(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:91,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:94,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeIntersection(java.util.Map,java.util.Map,java.util.ArrayList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeUnion(java.util.Map,java.util.Map,java.util.ArrayList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:100,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeDifference(java.util.Map,java.util.Map,java.util.ArrayList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:107,1"
      Dst: "[java.util.ArrayList].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:110,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].buildPointMap(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 1
    returnType: "java.util.HashMap"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].<init>(org.locationtech.jts.operation.overlayng.OverlayPoints,java.util.HashMap)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:160,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:161,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].<init>(org.locationtech.jts.operation.overlayng.OverlayPoints,java.util.HashMap)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:161,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].<init>(org.locationtech.jts.operation.overlayng.OverlayPoints,java.util.HashMap)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints$1"
    linkageType: null
    functionLinenumber: 160
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayPoints"
    - "java.util.HashMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:161,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeIntersection(java.util.Map,java.util.Map,java.util.ArrayList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:120"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:119"
        BranchSideFuncs:
        - "copyPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:116,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:116,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:117,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:117,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:117,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getX(int)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getY(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 4
    ICount: 21
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:151"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "getX(int)"
        - "setOrdinate(int,int,double)"
        - "copy()"
        - "makePrecise(double)"
        - "getY(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:148,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:152,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:154,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:154,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:154,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:155,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:156,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeUnion(java.util.Map,java.util.Map,java.util.ArrayList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 1
    ICount: 28
    EdgeCount: 69
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:139"
        BranchSideFuncs:
        - "iterator()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:138"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:144"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:143"
        BranchSideFuncs:
        - "copyPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:136,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:136,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:139,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:139,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:140,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:140,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:141,1"
      Dst: "[java.util.Map$Entry].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeDifference(java.util.Map,java.util.Map,java.util.ArrayList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 3
    ICount: 19
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:129"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:128"
        BranchSideFuncs:
        - "copyPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:125,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:125,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:126,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:126,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:126,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:42"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:90"
        BranchSideFuncs:
        - "getDimension(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:90"
        BranchSideFuncs:
        - "getDimension(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:91,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:65,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:66,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultDimension(int,int,int)"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 24
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:81,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:85,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultDimension(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].prepareNonPoint(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createLocator(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractCoordinates(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeIntersection(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeUnion(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeDifference(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 23
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].prepareNonPoint(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:104,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createLocator(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:106,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractCoordinates(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:110,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeIntersection(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:114,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeUnion(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:116,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeDifference(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:118,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].prepareNonPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:137"
        BranchSideFuncs:
        - "union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:138,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:302,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:303,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:387,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createLocator(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:126"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:124,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractCoordinates(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 219
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:220,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:221,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:221,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:230,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1:221,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeIntersection(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPointResult(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:143,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:143,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPointResult(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].hasLocation(boolean,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPoints(java.util.Set)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 3
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:187"
        BranchSideFuncs:
        - "hasLocation(boolean,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:186"
        BranchSideFuncs:
        - "createPoints(java.util.Set)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:179,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:182,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].hasLocation(boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:184,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:184,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:187,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPoints(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].hasLocation(boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:200,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPoints(java.util.Set)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:196"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.Coordinate)"
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:191,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:192,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:192,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:192,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:194,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPointResult(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:171"
        BranchSideFuncs:
        - "createEmpty(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:170"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:174"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:173"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:168,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:169,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:172,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:174,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:175,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 631
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[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: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:633,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:634,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:635,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:636,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Point[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:112,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:113,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeUnion(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:152"
        BranchSideFuncs:
        - "extractLines(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:157"
        BranchSideFuncs:
        - "extractPolygons(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:156"
        BranchSideFuncs:
        - "createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:147,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:150,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:154,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:157,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:252"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:244"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:245,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:246,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:247,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:248,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:249,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].extractPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:241"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:233"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:234,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:235,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:236,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:237,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:238,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 311
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:317"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:322"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:312,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:317,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:323,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].computeDifference(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 160
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].copyNonPoint()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPointResult(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:164"
        BranchSideFuncs:
        - "copyNonPoint()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:163"
        BranchSideFuncs:
        - "createPointResult(java.util.List)"
        - "findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:162,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].copyNonPoint()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:164,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].findPoints(boolean,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:164,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].createPointResult(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].copyNonPoint()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:215"
        BranchSideFuncs:
        - "copy()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints:216,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 497
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].nodeEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].buildGraph(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isResultAreaConsistent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 34
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:506"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:505"
        BranchSideFuncs:
        - "labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:510"
        BranchSideFuncs:
        - "toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:509"
        BranchSideFuncs:
        - "toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:513"
        BranchSideFuncs:
        - "toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:512"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
        - "extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:525"
        BranchSideFuncs:
        - "getGeometry(int)"
        - "isResultAreaConsistent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:524"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:522"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:525"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:498,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].nodeEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:500,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].buildGraph(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:503,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:506,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:513,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:520,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:521,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:521,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isResultAreaConsistent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:523,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].nodeEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 531
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].clippingEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].setClipEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].build(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].hasEdgesFor(int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].setCollapsed(int,boolean)"
    functionUses: 1
    ICount: 33
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:538"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:545"
        BranchSideFuncs:
        - "clippingEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:544"
        BranchSideFuncs:
        - "getGeometry(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:545"
        BranchSideFuncs:
        - "setClipEnvelope(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:544"
        BranchSideFuncs:
        - "getGeometry(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:545"
        BranchSideFuncs:
        - "setCollapsed(int,boolean)"
        - "hasEdgesFor(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:544"
        BranchSideFuncs:
        - "getGeometry(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:553"
        BranchSideFuncs:
        - "setCollapsed(int,boolean)"
        - "hasEdgesFor(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:552"
        BranchSideFuncs:
        - "setCollapsed(int,boolean)"
        - "hasEdgesFor(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:532,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:539,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].clippingEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:541,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].setClipEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:545,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:544,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].build(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:553,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].hasEdgesFor(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:553,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].setCollapsed(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:108,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:90,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].clippingEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.InputGeometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeEnv(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:72"
        BranchSideFuncs:
        - "getGeometry(int)"
        - "safeEnv(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:68,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:73,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:72,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:77,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeEnv(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.InputGeometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getEnvelope(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeEnv(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getEnvelope(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeEnv(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:104,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].getEnvelope(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:56,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeEnv(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeExpandDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:123,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeExpandDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:125,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].safeExpandDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:145"
        BranchSideFuncs:
        - "getScale()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:142"
        BranchSideFuncs:
        - "getWidth()"
        - "getHeight()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:135,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:137,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:137,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:137,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:140,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:146,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 531
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 1
    ICount: 49
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:531"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Envelope)"
        - "<init>()"
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:531"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Envelope)"
        - "<init>()"
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:533"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:534"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:534"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:533"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:534"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:533"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:535"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:534"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:537"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:536"
        BranchSideFuncs:
        - "<init>(double,double,double,double)"
      - BranchSide: "org.locationtech.jts.geom.Envelope:535"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:532,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:532,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.geom.Envelope:532,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:538,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:36,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:37,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:39,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:47,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 3
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:60"
        BranchSideFuncs:
        - "addPolygon(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:62"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:59,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:61,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygonRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:72,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:73,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygonRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:75,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:76,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygonRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:88"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:86,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:89,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:90,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:91,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].intersectsSegment(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:100"
        BranchSideFuncs:
        - "expandToInclude(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:96,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].intersectsSegment(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:97,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].intersectsSegment(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 59
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:575"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:582"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:569,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 23
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:67,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].setClipEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:133,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:134,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:66,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:69,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:51,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].build(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].node(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.EdgeMerger].merge(java.util.List)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:163,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:165,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].node(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeMerger].merge(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 212
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygon(org.locationtech.jts.geom.Polygon,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.LineString,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 4
    ICount: 37
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:212"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:214"
        BranchSideFuncs:
        - "isClippedCompletely(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:217"
        BranchSideFuncs:
        - "addPolygon(org.locationtech.jts.geom.Polygon,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:219"
        BranchSideFuncs:
        - "addLine(org.locationtech.jts.geom.LineString,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:222"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223"
        BranchSideFuncs:
        - "addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:222"
        BranchSideFuncs:
        - "addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
        - "getDimension()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:213,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:215,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:215,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:218,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygon(org.locationtech.jts.geom.Polygon,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:220,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.LineString,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].disjoint(org.locationtech.jts.geom.Envelope)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:299"
        BranchSideFuncs:
        - "disjoint(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:298"
        BranchSideFuncs:
        - "disjoint(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:299,1"
      Dst: "[org.locationtech.jts.geom.Envelope].disjoint(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygon(org.locationtech.jts.geom.Polygon,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygonRing(org.locationtech.jts.geom.LinearRing,boolean,int)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:249,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygonRing(org.locationtech.jts.geom.LinearRing,boolean,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:252,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:253,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygonRing(org.locationtech.jts.geom.LinearRing,boolean,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 268
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].clip(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int,int,boolean)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionUses: 2
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:270"
        BranchSideFuncs:
        - "isClippedCompletely(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:273"
        BranchSideFuncs:
        - "clip(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:284"
        BranchSideFuncs:
        - "computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
        - "<init>(int,int,boolean)"
        - "addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:269,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:271,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:271,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:274,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].clip(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:285,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:286,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int,int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:287,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].clip(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 316
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:325"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:328"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:327"
        BranchSideFuncs:
        - "clip(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:317,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:318,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:328,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 751
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 10
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:751"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:753"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:753"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:754"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:755"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:756"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:752,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:753,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:754,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:755,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:756,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:339,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:340,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 7
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:406"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:405"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:405,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:406,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:407,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RingClipper].clipToBoxEdge(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:80"
        BranchSideFuncs:
        - "clipToBoxEdge(org.locationtech.jts.geom.Coordinate[],int,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:81,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].clipToBoxEdge(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].clipToBoxEdge(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].isInsideEdge(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 44
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:109"
        BranchSideFuncs:
        - "isInsideEdge(org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:null"
        BranchSideFuncs:
        - "intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:126"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:125"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:126"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:125"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:126"
        BranchSideFuncs:
        - "copy()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:125"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:97,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].isInsideEdge(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:104,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:105,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:108,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:120,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:121,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:123,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:126,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].isInsideEdge(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:183"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 2
    ICount: 33
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:143,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:143,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:146,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 351
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:361"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:369"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:368"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:352,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:352,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 413
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:414,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:415,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:69,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.LineString,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 382
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isToBeLimited(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].limit(org.locationtech.jts.geom.LineString)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 24
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:384"
        BranchSideFuncs:
        - "isClippedCompletely(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:385"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:387"
        BranchSideFuncs:
        - "isToBeLimited(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:395"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "limit(org.locationtech.jts.geom.LineString)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:394"
        BranchSideFuncs:
        - "addLine(org.locationtech.jts.geom.Coordinate[],int)"
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:393"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:383,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:385,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:385,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:388,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isToBeLimited(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:389,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].limit(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:391,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:395,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isToBeLimited(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 426
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:430"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:427,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:431,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:435,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].limit(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 448
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:449,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:450,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].addPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].addOutside(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].finishSection()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:75"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:74"
        BranchSideFuncs:
        - "finishSection()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:71"
        BranchSideFuncs:
        - "addPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:70"
        BranchSideFuncs:
        - "addOutside(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:64,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].addPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:71,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].addOutside(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:75,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].finishSection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].addPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].startSection()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:81"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
        - "startSection()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:80"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
        - "startSection()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:81,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].startSection()"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:82,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].startSection()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:115"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:118"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:116,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].addOutside(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].isLastSegmentIntersecting(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].finishSection()"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].addPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:91"
        BranchSideFuncs:
        - "finishSection()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:90"
        BranchSideFuncs:
        - "addPoint(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:86,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].isLastSegmentIntersecting(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:88,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].finishSection()"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:91,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].addPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].isLastSegmentIntersecting(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].isSectionOpen()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:103"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:100,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].isSectionOpen()"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:104,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].isSectionOpen()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:107"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].finishSection()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:130"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:129"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:126,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:130,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:131,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:409"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:408"
        BranchSideFuncs:
        - "<init>(int)"
        - "addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:409,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:410,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 228
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:229,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:230,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:245"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:238,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:240,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:241,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:243,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].node(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].getNoder()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SimpleNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.IteratedNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ValidatingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ScaledNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SimpleNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ScaledNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.IteratedNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ValidatingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createEdges(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    functionUses: 1
    ICount: 7
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:185,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].getNoder()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:186,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:189,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:190,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createEdges(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].getNoder()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 7
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFloatingPrecisionNoder(boolean)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:126"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:125"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:128"
        BranchSideFuncs:
        - "createFloatingPrecisionNoder(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:127"
        BranchSideFuncs:
        - "createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:126,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFloatingPrecisionNoder(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:128,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFloatingPrecisionNoder(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:86"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.noding.Noder)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:78,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:79,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:80,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:80,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:84,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:73,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:73,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.Edge].isCollapsed(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    - "[org.locationtech.jts.operation.overlayng.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:208"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isCollapsed(org.locationtech.jts.geom.Coordinate[])"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:202"
        BranchSideFuncs:
        - "getData()"
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
        - "getCoordinates()"
        - "getIndex()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:195,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:197,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:200,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].isCollapsed(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:203,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:205,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:206,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:206,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].isCollapsed(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:58"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:53,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 47
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].copyInfo(org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:73,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].copyInfo(org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].copyInfo(org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDimension()"
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].isHole()"
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDepthDelta()"
    functionUses: 1
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:242"
        BranchSideFuncs:
        - "getDepthDelta()"
        - "isHole()"
        - "getDimension()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:237,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:238,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:239,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].isHole()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:240,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDepthDelta()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDimension()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 51
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDepthDelta()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 54
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeMerger].merge(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeMerger"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].create(org.locationtech.jts.operation.overlayng.Edge)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.Edge].size()"
    - "[org.locationtech.jts.operation.overlayng.Edge].merge(org.locationtech.jts.operation.overlayng.Edge)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeMerger:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:79"
        BranchSideFuncs:
        - "create(org.locationtech.jts.operation.overlayng.Edge)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeMerger:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeMerger:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:71"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "merge(org.locationtech.jts.operation.overlayng.Edge)"
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:53,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:54,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:56,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:56,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:56,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:57,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].create(org.locationtech.jts.operation.overlayng.Edge)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:58,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:61,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:71,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].size()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:71,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:74,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].merge(org.locationtech.jts.operation.overlayng.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].create(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 4
    returnType: "org.locationtech.jts.operation.overlayng.EdgeKey"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].<init>(org.locationtech.jts.operation.overlayng.Edge)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:30,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].<init>(org.locationtech.jts.operation.overlayng.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].<init>(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].initPoints(org.locationtech.jts.operation.overlayng.Edge)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:39,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].initPoints(org.locationtech.jts.operation.overlayng.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].initPoints(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].direction()"
    - "[org.locationtech.jts.operation.overlayng.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.Edge].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:48"
        BranchSideFuncs:
        - "init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:43,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].direction()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:49,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].direction()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 33
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:108"
        BranchSideFuncs:
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:89,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:91,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:100,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:56,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:57,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].size()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].merge(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].isHoleMerged(int,org.locationtech.jts.operation.overlayng.Edge,org.locationtech.jts.operation.overlayng.Edge)"
    - "[org.locationtech.jts.operation.overlayng.Edge].relativeDirection(org.locationtech.jts.operation.overlayng.Edge)"
    functionUses: 1
    ICount: 34
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:266"
        BranchSideFuncs:
        - "relativeDirection(org.locationtech.jts.operation.overlayng.Edge)"
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:261,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].isHoleMerged(int,org.locationtech.jts.operation.overlayng.Edge,org.locationtech.jts.operation.overlayng.Edge)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:267,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].relativeDirection(org.locationtech.jts.operation.overlayng.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].isHoleMerged(int,org.locationtech.jts.operation.overlayng.Edge,org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 279
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.Edge"
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].isShell(int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:279"
        BranchSideFuncs:
        - "isShell(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:279"
        BranchSideFuncs:
        - "isShell(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:280,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].isShell(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].isShell(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:205"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].relativeDirection(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.Edge].getCoordinate(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:126"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:125,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:125,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].hasEdgesFor(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].setCollapsed(int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].buildGraph(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 559
    functionDepth: 12
    returnType: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].<init>()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - "[org.locationtech.jts.operation.overlayng.Edge].createLabel()"
    - "[org.locationtech.jts.operation.overlayng.Edge].getCoordinates()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:561"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:564"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getCoordinates()"
        - "createLabel()"
        - "addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:563"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:560,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:561,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:561,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:561,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:562,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:562,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].createLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:562,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:35,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:36,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].createLabel()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].<init>()"
    - "[org.locationtech.jts.operation.overlayng.Edge].initLabel(org.locationtech.jts.operation.overlayng.OverlayLabel,int,int,int,boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:133,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:134,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].initLabel(org.locationtech.jts.operation.overlayng.OverlayLabel,int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:168,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].initLabel(org.locationtech.jts.operation.overlayng.OverlayLabel,int,int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].labelDim(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].initNotPart(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].initBoundary(int,int,int,boolean)"
    - "[org.locationtech.jts.operation.overlayng.Edge].locationLeft(int)"
    - "[org.locationtech.jts.operation.overlayng.Edge].locationRight(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].initCollapse(int,boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].initLine(int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:163,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].labelDim(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:167,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initNotPart(int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:170,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].locationLeft(int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:170,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].locationRight(int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:170,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initBoundary(int,int,int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:173,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initCollapse(int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:176,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initLine(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].labelDim(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:191"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initNotPart(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 275
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].locationLeft(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].delSign(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:221,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].delSign(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].delSign(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 230
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:232"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].locationRight(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].delSign(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:210,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].delSign(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initBoundary(int,int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:224"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initCollapse(int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:248"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].initLine(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:264"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 11
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdgePair(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].insert(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:105,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdgePair(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:107,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].insert(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdgePair(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel,boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:51,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:53,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean,org.locationtech.jts.operation.overlayng.OverlayLabel,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean,org.locationtech.jts.operation.overlayng.OverlayLabel,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean,org.locationtech.jts.operation.overlayng.OverlayLabel,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:100,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].setSym(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].setNext(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 2
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:89,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].setSym(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:92,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].setNext(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].setSym(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].setNext(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].insert(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayGraph:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:131"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.edgegraph.HalfEdge)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:130"
        BranchSideFuncs:
        - "orig()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:119,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:126,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:126,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:128,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:131,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insertAfter(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insertionEdge(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:263"
        BranchSideFuncs:
        - "insertionEdge(org.locationtech.jts.edgegraph.HalfEdge)"
        - "insertAfter(org.locationtech.jts.edgegraph.HalfEdge)"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:257,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:259,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insertAfter(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:264,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insertionEdge(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 212
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].insertAfter(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 316
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].setNext(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionUses: 2
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:317,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:317,1"
      Dst: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:318,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:319,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].setNext(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:320,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:60,1"
      Dst: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].insertionEdge(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 277
    functionDepth: 8
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 1
    ICount: 22
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:303"
        BranchSideFuncs:
        - "compareTo(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:280"
        BranchSideFuncs:
        - "shouldNeverReachHere()"
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:279"
        BranchSideFuncs:
        - "oNext()"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:280,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:287,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:305,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 372
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].compareAngularDirection(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:374,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].compareAngularDirection(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].compareAngularDirection(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].directionX()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].directionY()"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].directionPt()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].directionPt()"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 23
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:409"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:411"
        BranchSideFuncs:
        - "quadrant(double,double)"
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:409"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:411"
        BranchSideFuncs:
        - "quadrant(double,double)"
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:420"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:419"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:424"
        BranchSideFuncs:
        - "directionPt()"
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:403,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].directionX()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:404,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].directionY()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:412,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:425,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].directionPt()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:427,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].directionX()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].directionPt()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].directionPt()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:115,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].directionPt()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:115,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].directionPt()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:136,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].directionY()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].directionPt()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].directionPt()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:122,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].directionPt()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:173,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 326
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    - "boolean"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinatesOriented()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].labelForResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 27
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:337"
        BranchSideFuncs:
        - "isInResultArea()"
        - "getEdges()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:336"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:327"
        BranchSideFuncs:
        - "isInResultArea()"
        - "getEdges()"
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:327"
        BranchSideFuncs:
        - "isInResultArea()"
        - "getEdges()"
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:331"
        BranchSideFuncs:
        - "setUserData(java.lang.Object)"
        - "createLineString(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinatesOriented()"
        - "labelForResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:327,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:328,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:328,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:328,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:328,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:329,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:332,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinatesOriented()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:333,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:334,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].labelForResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:334,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:335,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:337,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinatesOriented()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].clone()"
    - "[org.jdom2.EntityRef].clone()"
    - "[org.jdom2.output.StAXEventOutputter].clone()"
    - "[org.jdom2.CloneBase].clone()"
    - "[org.locationtech.jts.geom.GeometryCollection].clone()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].clone()"
    - "[org.jdom2.DocType].clone()"
    - "[org.jdom2.Element].clone()"
    - "[org.jdom2.xpath.util.AbstractXPathCompiled].clone()"
    - "[org.jdom2.CDATA].clone()"
    - "[org.locationtech.jts.math.DD].clone()"
    - "[org.locationtech.jts.geom.Point].clone()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].clone()"
    - "[org.locationtech.jts.geom.CoordinateList].clone()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].clone()"
    - "[org.locationtech.jts.geom.Coordinate].clone()"
    - "[org.locationtech.jts.geom.Polygon].clone()"
    - "[org.jdom2.ProcessingInstruction].clone()"
    - "[org.locationtech.jts.geom.Geometry].clone()"
    - "[org.jdom2.Attribute].clone()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].clone()"
    - "[org.locationtech.jts.geom.LineString].clone()"
    - "[org.jdom2.Comment].clone()"
    - "[org.jdom2.Document].clone()"
    - "[org.jdom2.Content].clone()"
    - "[org.jdom2.xpath.jaxen.JaxenCompiled].clone()"
    - "[org.locationtech.jts.math.Vector2D].clone()"
    - "[org.jdom2.output.StAXStreamOutputter].clone()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].clone()"
    - "[org.locationtech.jts.linearref.LinearLocation].clone()"
    - "[org.jdom2.output.Format].clone()"
    - "[org.jdom2.output.XMLOutputter].clone()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 10
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:133"
        BranchSideFuncs:
        - "clone()"
        - "reverse(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:134,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:135,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:483"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].labelForResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 340
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].toString(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:340"
        BranchSideFuncs:
        - "isInResultArea()"
        - "getLabel()"
        - "toString(boolean)"
        - "isForward()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:341,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:341,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:341,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:341,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].toString(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:341,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:342,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:342,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 107
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].toString(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 663
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].locationString(int,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:664,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:665,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:666,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].locationString(int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:669,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].locationString(int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 672
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    - "[org.locationtech.jts.geom.Location].toLocationSymbol(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isKnown(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimensionSymbol(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].ringRoleSymbol(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 38
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:674"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:680"
        BranchSideFuncs:
        - "getLocation(int,int,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:679"
        BranchSideFuncs:
        - "toLocationSymbol(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:680"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:679"
        BranchSideFuncs:
        - "toLocationSymbol(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:682"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:684"
        BranchSideFuncs:
        - "dimensionSymbol(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:683"
        BranchSideFuncs:
        - "isCollapse(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:683"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:683"
        BranchSideFuncs:
        - "isCollapse(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:682"
        BranchSideFuncs:
        - "dimensionSymbol(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:684"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:687"
        BranchSideFuncs:
        - "ringRoleSymbol(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:686"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:685"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:684"
        BranchSideFuncs:
        - "ringRoleSymbol(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:673,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:674,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:675,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:675,1"
      Dst: "[org.locationtech.jts.geom.Location].toLocationSymbol(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:675,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:682,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isKnown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:683,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimensionSymbol(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:684,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:685,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].ringRoleSymbol(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:687,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 450
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:451"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:453"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 584
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:587"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:587"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:586"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:588"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:594"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:594"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:593"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:595"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:595"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:594"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[org.locationtech.jts.geom.Location].toLocationSymbol(int)"
    functionSourceFile: "org.locationtech.jts.geom.Location"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "char"
    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: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isKnown(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 382
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:386"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:385"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimensionSymbol(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 706
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 519
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimension(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:519"
        BranchSideFuncs:
        - "dimension(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:520,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimension(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimension(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:204"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].ringRoleSymbol(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 696
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:697"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:696"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 567
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.operation.overlayng.InputGeometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].computeLabelling()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markResultAreaEdges(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].unmarkDuplicateEdgesFromResultArea()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:568,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.operation.overlayng.InputGeometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:569,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].computeLabelling()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:570,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markResultAreaEdges(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:571,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].unmarkDuplicateEdgesFromResultArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.operation.overlayng.InputGeometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    - "org.locationtech.jts.operation.overlayng.InputGeometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:42,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].computeLabelling()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelAreaNodeEdges(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelConnectedLinearEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdges()"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:50,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:52,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelAreaNodeEdges(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelConnectedLinearEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:65,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:66,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelAreaNodeEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:83"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "hasEdges(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:82"
        BranchSideFuncs:
        - "propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:78,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:79,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLocation(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(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.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 47
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:101"
        BranchSideFuncs:
        - "degree()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:103"
        BranchSideFuncs:
        - "findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:126"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "hasSides(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:141"
        BranchSideFuncs:
        - "getLocation(int,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:146"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:116"
        BranchSideFuncs:
        - "getLabel()"
        - "isBoundary(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:102,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:104,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:110,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:111,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:117,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:123,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:127,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:144,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:63"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:63"
        BranchSideFuncs:
        - "getDimension()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:64,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 471
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:475"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:474"
        BranchSideFuncs:
        - "oNext()"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:476,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:171"
        BranchSideFuncs:
        - "hasSides(int)"
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:170"
        BranchSideFuncs:
        - "oNext()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:165"
        BranchSideFuncs:
        - "getLabel()"
        - "isBoundary(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:166,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:167,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:168,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:168,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:171,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 639
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:640"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:644"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:643"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:641"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:640"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:641"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:640"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:644"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:643"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:644"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:643"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:119,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:184,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 293
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:297"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:123,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.TopologyException:39,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:101"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:101"
        BranchSideFuncs:
        - "getDimension()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:102,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelConnectedLinearEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocations(int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:236"
        BranchSideFuncs:
        - "propagateLinearLocations(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:235"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocations(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:233,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocations(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findLinearEdgesWithLocation(java.util.Collection,int)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isLine(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
    - "[java.util.List].size()"
    - "[java.util.ArrayDeque].<init>(java.util.Collection)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].removeFirst()"
    functionUses: 2
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:248"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:260"
        BranchSideFuncs:
        - "propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:246,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findLinearEdgesWithLocation(java.util.Collection,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:247,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:249,1"
      Dst: "[java.util.ArrayDeque].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isLine(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:252,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:253,1"
      Dst: "[java.util.Deque].removeFirst()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:258,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findLinearEdgesWithLocation(java.util.Collection,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 304
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLinear(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:314"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isLinear(int)"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:313"
        BranchSideFuncs:
        - "isLineLocationUnknown(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:305,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:307,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:309,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLinear(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:310,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:311,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLinear(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 369
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:372"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:371"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:370"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:371"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:370"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:372"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:372"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 475
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:479"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].isLine(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:81"
        BranchSideFuncs:
        - "getDimension(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:82,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 264
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    - "boolean"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:290"
        BranchSideFuncs:
        - "oNextOE()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:274"
        BranchSideFuncs:
        - "getLabel()"
        - "isLineLocationUnknown(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:265,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:265,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:273,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:277,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:282,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:289,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:289,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 553
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:558"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:557"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:209"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:204"
        BranchSideFuncs:
        - "getLabel()"
        - "isLineLocationUnknown(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:208"
        BranchSideFuncs:
        - "labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:202,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:202,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:203,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationCollapse(int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:220"
        BranchSideFuncs:
        - "setLocationCollapse(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:214,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:215,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:221,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationCollapse(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationCollapse(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 331
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isHole(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:332"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:336"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:332,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isHole(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isHole(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 504
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:509"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:508"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 331
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:341"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:336"
        BranchSideFuncs:
        - "getLabel()"
        - "isLineLocationUnknown(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:340"
        BranchSideFuncs:
        - "labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:334,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:334,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:335,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationAll(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:364"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:378"
        BranchSideFuncs:
        - "setLocationAll(int,int)"
        - "locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:364,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:365,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationAll(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:379,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationAll(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 308
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:314"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 423
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:423"
        BranchSideFuncs:
        - "orig()"
        - "locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
        - "dest()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:423"
        BranchSideFuncs:
        - "orig()"
        - "locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
        - "dest()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:426"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:425,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getLocator(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:126"
        BranchSideFuncs:
        - "getGeometry(int)"
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:130"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate)"
        - "getLocator(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:131,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getLocator(int)"
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:132,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].getLocator(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:145"
        BranchSideFuncs:
        - "getGeometry(int)"
        - "<init>(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:139,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:139,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markResultAreaEdges(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 431
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:435"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:433,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocationBoundaryOrLine(int,int,boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultArea()"
    functionUses: 1
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:456"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:448,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:449,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:452,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:452,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocationBoundaryOrLine(int,int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:450,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:454,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 408
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:409"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:408"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:409"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:408"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocationBoundaryOrLine(int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 612
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:613"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:616"
        BranchSideFuncs:
        - "getLocation(int,int,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:615"
        BranchSideFuncs:
        - "getLineLocation(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:613,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:614,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:616,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 28
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 200
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].unmarkDuplicateEdgesFromResultArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 465
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultAreaBoth()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].unmarkFromResultAreaBoth()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:471"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isInResultAreaBoth()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:470"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:467"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:470"
        BranchSideFuncs:
        - "unmarkFromResultAreaBoth()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:469"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:467,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultAreaBoth()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].unmarkFromResultAreaBoth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultAreaBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:191"
        BranchSideFuncs:
        - "symOE()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:191"
        BranchSideFuncs:
        - "symOE()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:192,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].unmarkFromResultAreaBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:197,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 592
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getResultAreaEdges()"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].getPolygons()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].getLines()"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].getPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].isEmpty(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 71
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:593"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:593"
        BranchSideFuncs:
        - "getPolygons()"
        - "<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
        - "getResultAreaEdges()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:599"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:604"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:628"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:610"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
        - "getLines()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:619"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:619"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:619"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:622"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:629"
        BranchSideFuncs:
        - "setStrictMode(boolean)"
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
        - "getPoints()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:628"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:622"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:629"
        BranchSideFuncs:
        - "setStrictMode(boolean)"
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
        - "getPoints()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:628"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:629"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:634"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:633"
        BranchSideFuncs:
        - "createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:630"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:634"
        BranchSideFuncs:
        - "isEmpty(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:633"
        BranchSideFuncs:
        - "createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:631"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:634"
        BranchSideFuncs:
        - "createEmptyResult()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:633"
        BranchSideFuncs:
        - "createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:596,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getResultAreaEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:597,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:598,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].getPolygons()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:599,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:611,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:612,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:613,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].getLines()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:623,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:624,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:625,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].getPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:629,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].isEmpty(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:632,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:634,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 17
    BBCount: 31
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getResultAreaEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayGraph:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:91"
        BranchSideFuncs:
        - "isInResultArea()"
        - "getEdges()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayGraph:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:87,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:31,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildRings(java.util.List)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:26,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:37,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildRings(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].linkResultAreaEdgesMax(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMaximalRings(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMinimalRings(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:61,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].linkResultAreaEdgesMax(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMaximalRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:63,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMinimalRings(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:64,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].linkResultAreaEdgesMax(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:74"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:72,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultMaxLinked()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResultMax(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    functionUses: 1
    ICount: 39
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:92"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:79"
        BranchSideFuncs:
        - "isResultMaxLinked()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:58,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:58,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:80,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultMaxLinked()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:85,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:94,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResultMax(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:104,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:104,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultMaxLinked()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:248"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResultMax(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMaximalRings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:91"
        BranchSideFuncs:
        - "isInResultArea()"
        - "hasNext()"
        - "iterator()"
        - "getLabel()"
        - "next()"
        - "isBoundaryEither()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:90"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:81,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:85,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:86,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:87,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 273
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].attachEdges(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:110,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:112,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].attachEdges(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].attachEdges(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[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: 30
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:120"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:119"
        BranchSideFuncs:
        - "getEdgeRingMax()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:122"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:125"
        BranchSideFuncs:
        - "dest()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:124"
        BranchSideFuncs:
        - "setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
        - "nextResultMax()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:119,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:120,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:122,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:123,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:125,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:33,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 277
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMinimalRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignShellsAndHoles(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:100"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
        - "next()"
        - "assignShellsAndHoles(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:98,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignShellsAndHoles(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinimalRings()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:141"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:140"
        BranchSideFuncs:
        - "nextResultMax()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:136"
        BranchSideFuncs:
        - "getEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:132,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinimalRings()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:134,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:138,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:139,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:141,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinimalRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:148"
        BranchSideFuncs:
        - "nextResultMax()"
        - "linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:149,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:150,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    functionUses: 1
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:190"
        BranchSideFuncs:
        - "selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:189"
        BranchSideFuncs:
        - "linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:182"
        BranchSideFuncs:
        - "symOE()"
        - "isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:198"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:179,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:183,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:183,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:187,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:190,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:196,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:196,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211"
        BranchSideFuncs:
        - "isResultLinked()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210"
        BranchSideFuncs:
        - "isResultLinked()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210"
        BranchSideFuncs:
        - "isResultLinked()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:235"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:217,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:233"
        BranchSideFuncs:
        - "setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:227,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:229,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:234,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 227
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 269
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRingPts(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRing(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:42,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRingPts(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:43,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRing(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRingPts(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[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: 31
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:108"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:107"
        BranchSideFuncs:
        - "setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
        - "addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:113"
        BranchSideFuncs:
        - "dest()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:112"
        BranchSideFuncs:
        - "nextResult()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:98"
        BranchSideFuncs:
        - "closeRing()"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:97"
        BranchSideFuncs:
        - "getEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:96,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:98,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:109,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:110,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:111,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:115,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:116,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    functionUses: 2
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:150,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:155,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 265
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRing(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:121"
        BranchSideFuncs:
        - "createLinearRing(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:120"
        BranchSideFuncs:
        - "createLinearRing(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:121,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:122,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:122,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignShellsAndHoles(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].findSingleShell(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.jdom2.ContentList].addAll(java.util.Collection)"
    - "[org.jdom2.AttributeList].addAll(java.util.Collection)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:117"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:116"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:110,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].findSingleShell(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:112,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:113,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:117,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].findSingleShell(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 20
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isHole()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:139"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:139"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:135,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 59
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:162"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isHole()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:161"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:158,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:159,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].addHole(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:70,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].addHole(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].addHole(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:92,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getShell()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].findEdgeRingContaining(java.util.List)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:190"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getShell()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:189"
        BranchSideFuncs:
        - "findEdgeRingContaining(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:187"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:186"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:187"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:186"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:181,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getShell()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:182,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].findEdgeRingContaining(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:185,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:185,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:187,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getShell()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:88,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].findEdgeRingContaining(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 5
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 18
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:166"
        BranchSideFuncs:
        - "hasNext()"
        - "contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:162"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:159,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:197"
        BranchSideFuncs:
        - "isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:194,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:196,1"
      Dst: "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:198,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 708
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:709"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:711"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:710"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:709,1"
      Dst: "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.Envelope:711,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 786
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionUses: 3
    ICount: 30
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:787"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:790"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:789"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:791"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:794"
        BranchSideFuncs:
        - "isNull()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:793"
        BranchSideFuncs:
        - "getMaxX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:794"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:795"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:796"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:797"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:791,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:794,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:795,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:796,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:797,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:213"
        BranchSideFuncs:
        - "getCoordinates()"
        - "locate(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:202"
        BranchSideFuncs:
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:203,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:204,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getLocator()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:180,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getLocator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:180,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getLocator()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 169
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:173"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
        - "getRing()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:171,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].getPolygons()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].computePolygons(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:41,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].computePolygons(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].computePolygons(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:56"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "toPolygon(org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:54,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:234"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:233"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:233"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:229,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:231,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:234,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.operation.overlayng.InputGeometry"
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    - "boolean"
    - "int"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getAreaIndex()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:88,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:76,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:93,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getAreaIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].getAreaIndex()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:77"
        BranchSideFuncs:
        - "getDimension(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:76"
        BranchSideFuncs:
        - "getDimension(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:76,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].setStrictMode(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:96"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].getLines()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].markResultLines()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLines()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].markResultLines()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:103,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLines()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].markResultLines()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultEither()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultLine()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:123"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isInResultEither()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:117"
        BranchSideFuncs:
        - "isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
        - "getLabel()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:122"
        BranchSideFuncs:
        - "markInResultLine()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:109,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:109,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:116,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultEither()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:119,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultEither()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:222"
        BranchSideFuncs:
        - "isInResult()"
        - "symOE()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:222"
        BranchSideFuncs:
        - "isInResult()"
        - "symOE()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:223,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:223,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:218"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundarySingleton()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryCollapse()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isInteriorCollapse()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapseAndNotPartInterior()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineInArea(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryTouch()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:159"
        BranchSideFuncs:
        - "isBoundaryCollapse()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:158"
        BranchSideFuncs:
        - "isInteriorCollapse()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:158"
        BranchSideFuncs:
        - "isInteriorCollapse()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:179"
        BranchSideFuncs:
        - "isLineInArea(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:197"
        BranchSideFuncs:
        - "isBoundaryTouch()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:196"
        BranchSideFuncs:
        - "effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
        - "isResultOfOp(int,int,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:197"
        BranchSideFuncs:
        - "isBoundaryTouch()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:196"
        BranchSideFuncs:
        - "effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
        - "isResultOfOp(int,int,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:196"
        BranchSideFuncs:
        - "effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
        - "isResultOfOp(int,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:143,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundarySingleton()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryCollapse()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:159,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isInteriorCollapse()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapseAndNotPartInterior()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:180,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineInArea(int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:189,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryTouch()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:197,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:199,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundarySingleton()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:465"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:464"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:465"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:464"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:466"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:465"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:466"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:465"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryCollapse()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 427
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryBoth()"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:429"
        BranchSideFuncs:
        - "isBoundaryBoth()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:428"
        BranchSideFuncs:
        - "isBoundaryBoth()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:428"
        BranchSideFuncs:
        - "isBoundaryBoth()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:428,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:429,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryBoth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 346
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:346"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:417"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:417"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isInteriorCollapse()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 529
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:530"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:531"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:530"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:530"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:531"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:530"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:531"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:532"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:531"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:531"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:532"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:531"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapseAndNotPartInterior()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 541
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:542"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:542"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:542"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:543"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineInArea(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 491
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:495"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:494"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:493"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:492"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:494"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryTouch()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryBoth()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:439"
        BranchSideFuncs:
        - "getLocation(int,int,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:438"
        BranchSideFuncs:
        - "isBoundaryBoth()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:438"
        BranchSideFuncs:
        - "isBoundaryBoth()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:439,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryBoth()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:440,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:219"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:221"
        BranchSideFuncs:
        - "getLineLocation(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:218,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:220,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine(int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:222,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 356
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:359"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultLine()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:215,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLines()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:234"
        BranchSideFuncs:
        - "isInResultLine()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:229"
        BranchSideFuncs:
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:228"
        BranchSideFuncs:
        - "isVisited()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:230"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "markVisitedBoth()"
        - "toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:226,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:227,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:227,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:227,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:228,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:229,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:231,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 209
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 252
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:237,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:238,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:239,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:239,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:240,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:242,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:243,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:224,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.CoordinateList:227,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:230,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:261,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:262,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].setStrictMode(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:57"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].getPoints()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].addResultPoints()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].addResultPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].addResultPoints()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].isResultPoint(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:73"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getNodeEdges()"
        - "isResultPoint(org.locationtech.jts.operation.overlayng.OverlayEdge)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:72"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.Coordinate)"
        - "add(java.lang.Object)"
        - "copy()"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:67,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:67,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:67,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:67,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:68,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].isResultPoint(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:69,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:69,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].isResultPoint(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].isEdgeOf(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 1
    ICount: 22
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:90"
        BranchSideFuncs:
        - "oNext()"
        - "getLabel()"
        - "isEdgeOf(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:89"
        BranchSideFuncs:
        - "oNext()"
        - "getLabel()"
        - "isEdgeOf(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:88"
        BranchSideFuncs:
        - "isInResult()"
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:89,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:90,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:91,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].isEdgeOf(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:93,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].isEdgeOf(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryCollapse()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:101"
        BranchSideFuncs:
        - "isLine(int)"
        - "isBoundary(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:101"
        BranchSideFuncs:
        - "isLine(int)"
        - "isBoundary(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:101"
        BranchSideFuncs:
        - "isLine(int)"
        - "isBoundary(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:101"
        BranchSideFuncs:
        - "isLine(int)"
        - "isBoundary(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:100,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryCollapse()"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - Src: "org.locationtech.jts.operation.overlayng.IntersectionPointBuilder:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].isEmpty(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 638
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.List].size()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:639"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:638"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:639"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:638"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:639,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isResultAreaConsistent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 391
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getArea()"
    - "[org.locationtech.jts.geom.GeometryCollection].getArea()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isLess(double,double,double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isDifferenceAreaConsistent(double,double,double,double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isGreater(double,double,double)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 41
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:395"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:394"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:396"
        BranchSideFuncs:
        - "getArea()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:-1"
        BranchSideFuncs:
        - "isLess(double,double,double)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:-1"
        BranchSideFuncs:
        - "isGreater(double,double,double)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:416"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:395,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:397,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:404,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isLess(double,double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:408,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isDifferenceAreaConsistent(double,double,double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:416,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isGreater(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isLess(double,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:439"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isDifferenceAreaConsistent(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 432
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isLess(double,double,double)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:435"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:434"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:433,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isLess(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isGreater(double,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 443
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:444"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:443"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].init()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].<init>(org.locationtech.jts.operation.overlayng.ElevationModel)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:198"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:202"
        BranchSideFuncs:
        - "init()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:201"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
        - "<init>(org.locationtech.jts.operation.overlayng.ElevationModel)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:200,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].init()"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:202,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel$2].<init>(org.locationtech.jts.operation.overlayng.ElevationModel)"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel].init()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell].compute()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell].getZ()"
    functionUses: 2
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:151"
        BranchSideFuncs:
        - "getZ()"
        - "compute()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:154,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell].compute()"
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel:156,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell].compute()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell"
    linkageType: null
    functionLinenumber: 265
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell:268"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell].getZ()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel$ElevationCell"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.ElevationModel$2].<init>(org.locationtech.jts.operation.overlayng.ElevationModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.ElevationModel$2"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.ElevationModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.ElevationModel$2:202,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].intersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:33,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:33,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:41,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:42,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:37,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:37,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:41,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:42,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:41,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:42,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].unaryUnion(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1].<init>(double)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:48,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:60,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:61,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:62,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:147,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].unionNoValid(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:66,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:66,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:64,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].unaryUnionNoValid(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$2].<init>(double)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$2].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:82,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:83,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:84,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$2].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$2:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:147,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].access$000(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].unionNoValid(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:26,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].unionNoValid(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].unionNoValid(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:66,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:66,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:48,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:51,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:52,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 3
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:58"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:57"
        BranchSideFuncs:
        - "quadrant(double,double)"
        - "isTrue(boolean,java.lang.String)"
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:58"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:57"
        BranchSideFuncs:
        - "quadrant(double,double)"
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:62,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:63,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Edge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Label"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getDirectedCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getQuadrant()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 69
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getDx()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getDy()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].setNode(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].compareDirection(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:80,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].compareDirection(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].compareDirection(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:107,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].compareDirection(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeEnd:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeEnd:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:107,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].computeLabel(org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:116,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:117,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:117,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:118,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:119,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].toString()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:124,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:125,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:125,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:126,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:127,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:128,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:128,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:128,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:128,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:128,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:128,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLength(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:86,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:103,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:104,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:105,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:106,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:107,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:197,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:190,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:199,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:220,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:271,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:272,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:274,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:275,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getTriangles()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:310"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:300,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:301,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:301,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:302,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:303,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getTriangles()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:306,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:306,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:308,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:311,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:313,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:594"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:597"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:593,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:595,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:596,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:596,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.LinearRing[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:583,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:584,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:585,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:587,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:587,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:588,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:301,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.geom.Envelope:306,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:211,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:56,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:57,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getTriangles()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:77,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].compute()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:84,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:87,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:88,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].triangulate(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:100,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:101,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].triangulate(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:104,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:105,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].compute()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:73,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:74,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:95,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].compute()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].extractOrientedRings(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].nodeRings()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].copyToList(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinHoles()"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:105,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].extractOrientedRings(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:107,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].nodeRings()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:108,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].copyToList(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:110,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinHoles()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:111,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].extractOrientedRings(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].extractOrientedRing(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].sortHoles(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:115,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:115,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].extractOrientedRing(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:116,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].sortHoles(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:117,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:119,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].extractOrientedRing(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].clone()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:124,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:125,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:129,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:130,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:483"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].sortHoles(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:393"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:395"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:392,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:393,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:394,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:394,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:396,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:396,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:400,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator"
    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: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$EnvelopeComparator:400,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].nodeRings()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].node()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].isShellNoded()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getNodedShell()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].isHoleNoded(int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getNodedHole(int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getHolesTouching()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:135,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:136,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].node()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:137,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].isShellNoded()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:138,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getNodedShell()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:141,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].isHoleNoded(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:142,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getNodedHole(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:145,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getHolesTouching()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].createNodedSegmentStrings(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:41,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].createNodedSegmentStrings(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].createNodedSegmentStrings(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder].createNodedSegString(org.locationtech.jts.geom.Coordinate[],int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonNoder:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:73,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:74,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].createNodedSegString(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:74,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].createNodedSegString(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.noding.NodedSegmentString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:82,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:82,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:69,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].node()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].<init>(boolean[])"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:46,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].<init>(boolean[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:47,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:48,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].<init>(boolean[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:98,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:95,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:56,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:91,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].isShellNoded()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].hasNodes()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:52,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:52,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].hasNodes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].hasNodes()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:135,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].size()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:48,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getNodedShell()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:60,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:60,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].getSplitCoordinates()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:121,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].getSplitCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].getSplitCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.noding.SegmentNodeList].addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 16
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:298"
        BranchSideFuncs:
        - "next()"
        - "addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:297"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:286,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:288,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:290,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:292,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:293,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:295,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:298,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:86,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:87,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:87,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].size()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 110
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 68
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.SegmentNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:62,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:72,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].safeOctant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:147"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "safeOctant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:146"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "safeOctant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:147,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:147,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].safeOctant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].safeOctant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.Octant].octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:154"
        BranchSideFuncs:
        - "octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:153"
        BranchSideFuncs:
        - "octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:154,1"
      Dst: "[org.locationtech.jts.noding.Octant].octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.Octant].octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.Octant"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.Octant].octant(double,double)"
    - "[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: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.Octant:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:83"
        BranchSideFuncs:
        - "octant(double,double)"
    - Branch String: "org.locationtech.jts.noding.Octant:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:83"
        BranchSideFuncs:
        - "octant(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:84,1"
      Dst: "[org.locationtech.jts.noding.Octant].octant(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.Octant].octant(double,double)"
    functionSourceFile: "org.locationtech.jts.noding.Octant"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.Octant:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:42,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 18
  - functionName: "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNode:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:32"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:31"
        BranchSideFuncs:
        - "copy()"
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNode:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNode:34,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.SegmentNode:37,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNode:37,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 302
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:303,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:304,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionUses: 2
    ICount: 56
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:249"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:270"
        BranchSideFuncs:
        - "copy()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:248,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:250,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:260,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:260,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:267,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].isHoleNoded(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].hasNodes()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:56,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:56,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].hasNodes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getNodedHole(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:64,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder:64,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder].getHolesTouching()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].copyToList(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:149,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:151,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinHoles()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].createBoundaryIntersector(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.TreeSet].addAll(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinHole(int,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:157,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].createBoundaryIntersector(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:159,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:160,1"
      Dst: "[java.util.TreeSet].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:163,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinHole(int,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].createBoundaryIntersector(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[][])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.noding.SegmentSetMutualIntersector"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:482"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:478,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:479,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:479,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:483,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:43,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:53,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:79"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "size()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:78"
        BranchSideFuncs:
        - "build()"
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:75"
        BranchSideFuncs:
        - "addToIndex(org.locationtech.jts.noding.SegmentString)"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:74,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:76,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:79,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.NodedSegmentString:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getCoordinates()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:89"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
        - "next()"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:84,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:84,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:85,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:87,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:87,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainBuilder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:55"
        BranchSideFuncs:
        - "findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:57,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:159"
        BranchSideFuncs:
        - "expandBy(double)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:155,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinHole(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinTouchingHole(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinNonTouchingHole(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:170,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinTouchingHole(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:174,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinNonTouchingHole(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinTouchingHole(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findHoleTouchIndex(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].prev(int,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].addJoinedHole(int,org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:185,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findHoleTouchIndex(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:196,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].prev(int,int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:198,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:199,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].addJoinedHole(int,org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findHoleTouchIndex(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].contains(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:214,1"
      Dst: "[java.util.TreeSet].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].prev(int,int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:306"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].isLineInterior(java.util.List,int,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:276,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:277,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:277,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:278,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].isLineInterior(java.util.List,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:283,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].isLineInterior(java.util.List,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].prev(int,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].next(int,int)"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:297,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:298,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:298,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].prev(int,int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:299,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].next(int,int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:300,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].next(int,int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:313"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 8
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:83,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:88,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:157"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:157"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:145,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:158,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    functionUses: 4
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:194,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:195,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:196,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 7
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:109"
        BranchSideFuncs:
        - "isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:108"
        BranchSideFuncs:
        - "isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:108"
        BranchSideFuncs:
        - "isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:107,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].addJoinedHole(int,org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].createHoleSection(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].addAll(int,java.util.Collection)"
    - "[java.util.TreeSet].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:330,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:334,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:338,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].createHoleSection(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:342,1"
      Dst: "[java.util.List].addAll(int,java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:343,1"
      Dst: "[java.util.TreeSet].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].createHoleSection(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:368"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:367"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:377"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:358,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:366,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:366,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinNonTouchingHole(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findLowestLeftVertexIndex(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinableVertex(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].addJoinedHole(int,org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:226,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findLowestLeftVertexIndex(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:228,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinableVertex(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:229,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:230,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].addJoinedHole(int,org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findLowestLeftVertexIndex(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:411"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:416"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:413"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:412"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:409"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:408"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:412,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].findJoinableVertex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].higher(java.lang.Object)"
    - "[java.util.TreeSet].lower(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].intersectsBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:246,1"
      Dst: "[java.util.TreeSet].higher(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:251,1"
      Dst: "[java.util.TreeSet].lower(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:254,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].intersectsBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:258,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].intersectsBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    - "[org.locationtech.jts.noding.SegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].hasIntersection()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:429,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:431,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:432,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:434,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:435,1"
      Dst: "[org.locationtech.jts.noding.SegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:436,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].hasIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:442,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:442,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:444,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].triangulate(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:60,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:61,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].createNextLinks(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:94,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:99,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].createNextLinks(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:102,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].createNextLinks(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:109"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].build()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:61,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].build()"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].computeLevelOffsets()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].createBounds()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:69,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].computeLevelOffsets()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:70,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].createBounds()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].computeLevelOffsets()"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>()"
    - "[org.locationtech.jts.util.IntArrayList].add(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].levelNodeCount(int)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:84,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:85,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].add(int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:89,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].levelNodeCount(int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:93,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.IntArrayList].<init>()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:30,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].add(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:70,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.util.Arrays].copyOf(int[],int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.IntArrayList:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.IntArrayList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.IntArrayList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:60,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.util.IntArrayList:62,1"
      Dst: "[java.util.Arrays].copyOf(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].levelNodeCount(int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].ceil(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:97,1"
      Dst: "[org.locationtech.jts.math.MathUtil].ceil(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].ceil(int,int)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:72"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:96,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].createBounds()"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Envelope[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].fillItemBounds(org.locationtech.jts.geom.Envelope[])"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].fillLevelBounds(int,org.locationtech.jts.geom.Envelope[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:103,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].fillItemBounds(org.locationtech.jts.geom.Envelope[])"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:106,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].fillLevelBounds(int,org.locationtech.jts.geom.Envelope[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].fillItemBounds(org.locationtech.jts.geom.Envelope[])"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].computeItemEnvelope(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:128,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:129,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].computeItemEnvelope(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:61"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].computeItemEnvelope(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:144,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].fillLevelBounds(int,org.locationtech.jts.geom.Envelope[])"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Envelope[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].computeNodeEnvelope(org.locationtech.jts.geom.Envelope[],int,int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:117,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:118,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].computeNodeEnvelope(org.locationtech.jts.geom.Envelope[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].computeNodeEnvelope(org.locationtech.jts.geom.Envelope[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:136,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:138,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].initCornerIndex()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isConvex(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isCornerInvalid(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isFlat(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].removeCorner()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEar(int,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.tri.Tri].create(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextCorner(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:135,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:143,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].initCornerIndex()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:145,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:157,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isConvex(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isCornerInvalid(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:160,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isFlat(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:163,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].removeCorner()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:169,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:175,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEar(int,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:176,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:176,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:195,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextCorner(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 19
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].initCornerIndex()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isConvex(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:384,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isCornerInvalid(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isFlat(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:388,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].removeCorner()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:329,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:333,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].isItemsNodeEmpty(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].isNodeEmpty(int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:234"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:226,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].isItemsNodeEmpty(int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:236,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].isNodeEmpty(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].isItemsNodeEmpty(int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:255,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].isNodeEmpty(int,int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:246,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clampMax(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEar(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].findIntersectingVertex(int,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEarScan(int,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:200,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].findIntersectingVertex(int,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:205,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:207,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEarScan(int,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].findIntersectingVertex(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].envelope(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isRemoved(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:226,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].envelope(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:227,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:236,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isRemoved(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:248,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:256,1"
      Dst: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].envelope(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:315,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:316,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:162,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:164,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:165,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "int"
    - "org.locationtech.jts.util.IntArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].queryItemRange(org.locationtech.jts.geom.Envelope,int,org.locationtech.jts.util.IntArrayList)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNodeRange(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:175,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:180,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryItemRange(org.locationtech.jts.geom.Envelope,int,org.locationtech.jts.util.IntArrayList)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:183,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNodeRange(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryItemRange(org.locationtech.jts.geom.Envelope,int,org.locationtech.jts.util.IntArrayList)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "org.locationtech.jts.util.IntArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.IntArrayList].add(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:208,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:209,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].add(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNodeRange(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "int"
    - "org.locationtech.jts.util.IntArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].levelSize(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:188,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].levelSize(int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:193,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].levelSize(int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isRemoved(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:338"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:337"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:76,1"
      Dst: "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:78,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:62,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEarScan(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:310"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:275,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:277,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:289,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Angle:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:172,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].create(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:107,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextCorner(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:366,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:369,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:34,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].add(org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:45,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:47,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].add(org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].add(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].find(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].addAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:57,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:62,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].find(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:66,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:67,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].addAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].find(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.HashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:52,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:53,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.tri.TriEdge].normalize()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:34,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriEdge].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriEdge].normalize()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.TriEdge:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:38,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].addAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:77,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:77,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:80,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.tri.Tri].setTri(int,org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:162,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:163,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setTri(int,org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:461"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:460"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:457,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].setTri(int,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:181,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].<init>(java.util.List)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:41,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].<init>(java.util.List)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:42,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveScan(java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:54,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveScan(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveScan(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveNonDelaunay(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:72,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:73,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:77,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveNonDelaunay(org.locationtech.jts.triangulate.tri.Tri,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveNonDelaunay(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].oppVertex(int)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isConvex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isDelaunay(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.tri.Tri].flip(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:97,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:105,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:107,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:108,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:109,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].oppVertex(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:117,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isConvex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:127,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isDelaunay(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:128,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].flip(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:495,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:476"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:475"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].oppVertex(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:630,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isConvex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:148,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isDelaunay(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isInCircle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:167,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isInCircle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isInCircle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:183,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.TrianglePredicate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleNormalized(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.TrianglePredicate:128,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleNormalized(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleNormalized(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.TrianglePredicate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.TrianglePredicate:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.TrianglePredicate:79"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].flip(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].oppVertex(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].flip(org.locationtech.jts.triangulate.tri.Tri,int,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:219,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:220,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:222,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:223,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:224,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].oppVertex(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:227,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].flip(org.locationtech.jts.triangulate.tri.Tri,int,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].flip(org.locationtech.jts.triangulate.tri.Tri,int,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "int"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacentTris(org.locationtech.jts.triangulate.tri.Tri,int,int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].replace(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:236,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:242,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacentTris(org.locationtech.jts.triangulate.tri.Tri,int,int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:243,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:246,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].replace(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacentTris(org.locationtech.jts.triangulate.tri.Tri,int,int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.tri.Tri[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:337,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:337,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:338,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].replace(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:269"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "double"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:341"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:335"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:325,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:330,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:333,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 20
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:348,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:393,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:514"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:515,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:682,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:682,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:682,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.tri.Tri].oppEdge(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:380"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:379"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:372"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:354,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:355,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:357,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:366,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].oppEdge(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:367,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:368,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:370,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:373,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:376,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].oppEdge(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:640,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:511"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:510"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:508,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:511,1"
      Dst: "[java.util.ArrayDeque].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:512,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:513,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:513,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].remove(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:310,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].remove(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].setTri(int,org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:317"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:316,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:318,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:318,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setTri(int,org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.ArrayDeque].pop()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isRemovable(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:413"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:412"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:407"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:406"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:401,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:402,1"
      Dst: "[java.util.ArrayDeque].pop()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:404,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:407,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isRemovable(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:408,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:409,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isRemovable(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isTouchingSinglePolygon(org.locationtech.jts.triangulate.tri.Tri)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:465"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:464"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:462"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:465"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:464"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:455,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isTouchingSinglePolygon(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:460,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:460,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:461,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isTouchingSinglePolygon(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].envelope(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasAllVertices(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:486"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:485"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:477"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:478,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].envelope(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:481,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:481,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:482,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasAllVertices(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].envelope(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:542,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:542,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:543,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasAllVertices(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:529"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:528"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:525"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:522"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:524,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:525,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:538"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:537"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:534"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:532"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:533,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:534,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:534,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:490,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:517,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:518,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:519,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].findHoleSeedTri(java.util.Set)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:420"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:419"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:417,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].findHoleSeedTri(java.util.Set)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:420,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:421,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:422,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].findHoleSeedTri(java.util.Set)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isHoleSeedTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:430"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:430"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:428,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isHoleSeedTri(org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isHoleSeedTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:436"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:442"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:438"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:436"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:436"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:435,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:438,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:439,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:445"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:447,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Set"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:551"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:551"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:563"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:562"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:549,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:554,1"
      Dst: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:560,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:564,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:53,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:56,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:58,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:693,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:693,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:692,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.CoverageUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.CoverageUnion:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:69,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:80,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    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: "org.locationtech.jts.noding.BoundaryChainNoder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    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: "org.locationtech.jts.noding.SegmentExtractingNoder:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:322,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:323,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:324,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:325,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:387,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 450
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:103,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:104,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:105,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:106,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:107,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:119,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:136,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:137,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:138,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:139,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:140,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:197,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:190,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:199,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:271,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:272,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:274,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:275,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:136,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:137,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:138,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:139,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:140,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveFillByLength(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getFill()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:152,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:153,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:154,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getFill()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:197,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:190,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:199,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:220,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getFill()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:287,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:288,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:290,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:291,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getTriangles()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:310"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:300,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:301,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:301,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:302,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:303,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getTriangles()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:306,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:306,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:308,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:311,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:313,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Set"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:551"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:551"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:563"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:562"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:549,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:554,1"
      Dst: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:560,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:564,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].concaveFillByLengthRatio(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getFill()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:166,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:167,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:168,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getFill()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:197,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:190,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:199,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getFill()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:287,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:288,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:290,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:291,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:197,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:190,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:199,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLength(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:220,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setMaximumEdgeLengthRatio(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:242,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setHolesAllowed(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].setTight(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:271,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:272,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:274,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:275,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].getFill()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:287,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:288,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:290,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:291,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].buildHullTris()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getTriangles()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:310"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:300,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:301,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:301,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:302,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:303,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getTriangles()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:306,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:306,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:308,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:311,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:313,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:314,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].computeTargetEdgeLength(java.util.List,org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "double"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:341"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:335"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:323,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:325,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:330,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:333,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 20
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:348,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeFrameCornerTris(java.util.List,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Set"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.tri.Tri].oppEdge(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:380"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:379"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:372"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:354,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:355,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:356,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:357,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:366,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].oppEdge(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:367,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:368,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isFrameTri(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:370,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:373,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:376,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].vertexIndex(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:393,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.ArrayDeque].pop()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isRemovable(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:413"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:412"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:407"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:406"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:401,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:402,1"
      Dst: "[java.util.ArrayDeque].pop()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:404,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:407,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isRemovable(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:408,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:409,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeHoleTris()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].findHoleSeedTri(java.util.Set)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:420"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:419"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:417,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].findHoleSeedTri(java.util.Set)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:420,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:421,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:422,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTris()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].findHoleSeedTri(java.util.Set)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isHoleSeedTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:430"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:430"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:427,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:428,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isHoleSeedTri(org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isHoleSeedTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:436"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:442"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:438"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:436"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:436"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:435,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:438,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:439,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:445"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:447,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isRemovable(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isTouchingSinglePolygon(org.locationtech.jts.triangulate.tri.Tri)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:465"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:464"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:462"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:465"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:464"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:455,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isTouchingSinglePolygon(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:459,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:460,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:460,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:461,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].isTouchingSinglePolygon(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].envelope(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasAllVertices(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:486"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:485"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:477"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:478,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].envelope(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:481,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:481,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:482,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasAllVertices(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTris(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:490,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].addBorderTri(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:511"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:510"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:508,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:511,1"
      Dst: "[java.util.ArrayDeque].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:512,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:513,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:513,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].removeBorderTri(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:517,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:518,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:519,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasAllVertices(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:529"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:528"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:525"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:522"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:524,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:525,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].hasVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:538"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:537"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:534"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:532"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:533,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:534,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:534,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].envelope(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:542,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:542,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:543,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createHullGeometry(java.util.Set,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Set"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].isEmpty()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:551"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:551"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:563"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:562"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:548,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:549,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createEmptyHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:552,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:554,1"
      Dst: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:559,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:560,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:564,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].createFrame(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.LinearRing[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:583,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:584,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:585,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:587,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:587,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:588,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons].extractShellRings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:594"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:597"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:593,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:595,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:596,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHullOfPolygons:596,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getEncoding()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.output.Format"
    - "org.jdom2.output.support.XMLOutputProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.Format].getRawFormat()"
    - "[org.jdom2.output.Format].clone()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.XMLOutputter:266"
      Branch Sides:
      - BranchSide: "org.jdom2.output.XMLOutputter:265"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.XMLOutputter:264"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.XMLOutputter:267"
      Branch Sides:
      - BranchSide: "org.jdom2.output.XMLOutputter:266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.XMLOutputter:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:265,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:266,1"
      Dst: "[org.jdom2.output.Format].getRawFormat()"
    - Src: "org.jdom2.output.XMLOutputter:266,1"
      Dst: "[org.jdom2.output.Format].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.output.XMLOutputter].<init>()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:275,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.XMLOutputter)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.XMLOutputter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:288,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:305,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.support.XMLOutputProcessor)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.support.XMLOutputProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:317,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].setFormat(org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.Format].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:335,1"
      Dst: "[org.jdom2.output.Format].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].clone()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: 932
    functionDepth: 0
    returnType: "org.jdom2.output.Format"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format:936,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].getFormat()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.Format"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].getXMLOutputProcessor()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.support.XMLOutputProcessor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].setXMLOutputProcessor(org.jdom2.output.support.XMLOutputProcessor)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.support.XMLOutputProcessor"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Document"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:394,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:394,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Document"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Document)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:822,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Document)"
    - Src: "org.jdom2.output.XMLOutputter:823,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DocType"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:411,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:411,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DocType"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.DocType)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:839,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.DocType)"
    - Src: "org.jdom2.output.XMLOutputter:840,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:428,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:428,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Element)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:859,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Element)"
    - Src: "org.jdom2.output.XMLOutputter:860,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:449,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:449,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:881,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.output.XMLOutputter:881,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.XMLOutputter:882,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getContent()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 762
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:474,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:474,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:901,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.XMLOutputter:902,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.CDATA"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:490,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:490,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.CDATA"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.CDATA)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:918,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.CDATA)"
    - Src: "org.jdom2.output.XMLOutputter:919,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Text"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:507,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:507,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Text"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Text)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:936,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Text)"
    - Src: "org.jdom2.output.XMLOutputter:937,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Comment"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:523,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:523,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Comment"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Comment)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:953,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Comment)"
    - Src: "org.jdom2.output.XMLOutputter:954,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:540,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:540,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:971,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - Src: "org.jdom2.output.XMLOutputter:972,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.OutputStream)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.EntityRef"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.Writer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:556,1"
      Dst: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter:556,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].makeWriter(java.io.OutputStream,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.io.Writer"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.OutputStreamWriter].<init>(java.io.OutputStream,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:168,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.EntityRef"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:988,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - Src: "org.jdom2.output.XMLOutputter:989,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Document)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Document"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:580,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:582,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:586,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Document"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Document)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:822,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Document)"
    - Src: "org.jdom2.output.XMLOutputter:823,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.DocType)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.DocType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:602,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:604,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:608,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DocType"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.DocType)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:839,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.DocType)"
    - Src: "org.jdom2.output.XMLOutputter:840,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:624,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:626,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:630,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Element)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:859,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Element)"
    - Src: "org.jdom2.output.XMLOutputter:860,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(java.util.List)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:651,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:653,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:657,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:901,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.XMLOutputter:902,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.CDATA)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.CDATA"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:673,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:675,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:679,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.CDATA"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.CDATA)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:918,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.CDATA)"
    - Src: "org.jdom2.output.XMLOutputter:919,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Text)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Text"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:695,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:697,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:701,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Text"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Text)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:936,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Text)"
    - Src: "org.jdom2.output.XMLOutputter:937,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Comment)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Comment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:717,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:719,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:723,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Comment"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Comment)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:953,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Comment)"
    - Src: "org.jdom2.output.XMLOutputter:954,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.ProcessingInstruction)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:739,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:741,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:745,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:971,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - Src: "org.jdom2.output.XMLOutputter:972,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.EntityRef)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.EntityRef"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:761,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:763,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:767,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.EntityRef"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:988,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - Src: "org.jdom2.output.XMLOutputter:989,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputElementContentString(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:787,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:789,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:793,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:881,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.output.XMLOutputter:881,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.XMLOutputter:882,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Document"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Document)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:822,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Document)"
    - Src: "org.jdom2.output.XMLOutputter:823,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DocType"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.DocType)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:839,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.DocType)"
    - Src: "org.jdom2.output.XMLOutputter:840,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Element,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Element)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:859,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Element)"
    - Src: "org.jdom2.output.XMLOutputter:860,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputElementContent(org.jdom2.Element,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:881,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.output.XMLOutputter:881,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.XMLOutputter:882,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:901,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.XMLOutputter:902,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.CDATA,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.CDATA"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.CDATA)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:918,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.CDATA)"
    - Src: "org.jdom2.output.XMLOutputter:919,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Text,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Text"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Text)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:936,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Text)"
    - Src: "org.jdom2.output.XMLOutputter:937,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Comment"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Comment)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:953,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.Comment)"
    - Src: "org.jdom2.output.XMLOutputter:954,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:971,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - Src: "org.jdom2.output.XMLOutputter:972,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].output(org.jdom2.EntityRef,java.io.Writer)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.EntityRef"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:988,1"
      Dst: "[org.jdom2.output.support.XMLOutputProcessor].process(java.io.Writer,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - Src: "org.jdom2.output.XMLOutputter:989,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].escapeAttributeEntities(java.lang.String)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeAttributeEntities(java.lang.String,org.jdom2.output.Format)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:1007,1"
      Dst: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeAttributeEntities(java.lang.String,org.jdom2.output.Format)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeAttributeEntities(java.lang.String,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.support.FormatStack].<init>(org.jdom2.output.Format)"
    - "[org.jdom2.output.support.AbstractXMLOutputProcessor].attributeEscapedEntitiesFilter(java.io.Writer,org.jdom2.output.support.FormatStack,java.lang.String)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:195,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:197,1"
      Dst: "[org.jdom2.output.support.FormatStack].<init>(org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:197,1"
      Dst: "[org.jdom2.output.support.AbstractXMLOutputProcessor].attributeEscapedEntitiesFilter(java.io.Writer,org.jdom2.output.support.FormatStack,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:201,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.support.FormatStack].<init>(org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.support.FormatStack"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.Format].getIndent()"
    - "[org.jdom2.output.Format].getLineSeparator()"
    - "[org.jdom2.output.Format].getEncoding()"
    - "[org.jdom2.output.Format].getOmitDeclaration()"
    - "[org.jdom2.output.Format].getOmitEncoding()"
    - "[org.jdom2.output.Format].getExpandEmptyElements()"
    - "[org.jdom2.output.Format].getEscapeStrategy()"
    - "[org.jdom2.output.Format].getTextMode()"
    - "[org.jdom2.output.Format].isSpecifiedAttributesOnly()"
    - "[org.jdom2.output.Format].getIgnoreTrAXEscapingPIs()"
    functionUses: 0
    ICount: 104
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.FormatStack:177"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.FormatStack:183"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.FormatStack:184"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.FormatStack:184"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.FormatStack:183"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.FormatStack:187"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.FormatStack:184"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.FormatStack:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.FormatStack:164,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.support.FormatStack:165,1"
      Dst: "[org.jdom2.output.Format].getIndent()"
    - Src: "org.jdom2.output.support.FormatStack:166,1"
      Dst: "[org.jdom2.output.Format].getLineSeparator()"
    - Src: "org.jdom2.output.support.FormatStack:168,1"
      Dst: "[org.jdom2.output.Format].getEncoding()"
    - Src: "org.jdom2.output.support.FormatStack:169,1"
      Dst: "[org.jdom2.output.Format].getOmitDeclaration()"
    - Src: "org.jdom2.output.support.FormatStack:170,1"
      Dst: "[org.jdom2.output.Format].getOmitEncoding()"
    - Src: "org.jdom2.output.support.FormatStack:171,1"
      Dst: "[org.jdom2.output.Format].getExpandEmptyElements()"
    - Src: "org.jdom2.output.support.FormatStack:172,1"
      Dst: "[org.jdom2.output.Format].getEscapeStrategy()"
    - Src: "org.jdom2.output.support.FormatStack:173,1"
      Dst: "[org.jdom2.output.Format].getTextMode()"
    - Src: "org.jdom2.output.support.FormatStack:174,1"
      Dst: "[org.jdom2.output.Format].isSpecifiedAttributesOnly()"
    - Src: "org.jdom2.output.support.FormatStack:192,1"
      Dst: "[org.jdom2.output.Format].getIgnoreTrAXEscapingPIs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.output.Format].getIndent()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getLineSeparator()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getEncoding()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getOmitDeclaration()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getOmitEncoding()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getExpandEmptyElements()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getEscapeStrategy()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.EscapeStrategy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getTextMode()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.Format$TextMode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].isSpecifiedAttributesOnly()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getIgnoreTrAXEscapingPIs()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].escapeElementEntities(java.lang.String)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeElementEntities(java.lang.String,org.jdom2.output.Format)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:1019,1"
      Dst: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeElementEntities(java.lang.String,org.jdom2.output.Format)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeElementEntities(java.lang.String,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.Format].getEscapeStrategy()"
    - "[org.jdom2.output.Format].getLineSeparator()"
    - "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:216,1"
      Dst: "[org.jdom2.output.Format].getEscapeStrategy()"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:216,1"
      Dst: "[org.jdom2.output.Format].getLineSeparator()"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:216,1"
      Dst: "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getEscapeStrategy()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.EscapeStrategy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].getLineSeparator()"
    functionSourceFile: "org.jdom2.output.Format"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.jdom2.output.EscapeStrategy"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.output.EscapeStrategy].shouldEscape(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    functionUses: 0
    ICount: 106
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format:459"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:468"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:467"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:461"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:464"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:468"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:472"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:474"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:477"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:476"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:478"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:529"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:528"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:480"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:481"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:487"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:486"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:506"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:509"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:508"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:514"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:523"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:517"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:520"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:529"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:534"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format:457,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.Format:460,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.Format:461,1"
      Dst: "[org.jdom2.output.EscapeStrategy].shouldEscape(char)"
    - Src: "org.jdom2.output.Format:473,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.output.Format:475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - Src: "org.jdom2.output.Format:481,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.output.Format:482,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - Src: "org.jdom2.output.Format:487,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.output.Format:509,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.output.Format:517,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 19
    BBCount: 37
  - functionName: "[org.jdom2.output.XMLOutputter].clone()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: 1038
    functionDepth: 0
    returnType: "org.jdom2.output.XMLOutputter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:1039,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.jdom2.output.XMLOutputter:1045,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.jdom2.output.XMLOutputter:1045,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.jdom2.output.XMLOutputter].toString()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    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(boolean)"
    - "[java.lang.String].toCharArray()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.XMLOutputter:1074"
      Branch Sides:
      - BranchSide: "org.jdom2.output.XMLOutputter:1090"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.XMLOutputter:1089"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:1056,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:1057,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter:1058,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "org.jdom2.output.XMLOutputter:1074,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "org.jdom2.output.XMLOutputter:1086,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.output.XMLOutputter:1086,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.output.XMLOutputter:1092,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.IteratedNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.IteratedNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IteratedNoder:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.IteratedNoder:46,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.noding.IteratedNoder:48,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IteratedNoder].setMaximumIterations(int)"
    functionSourceFile: "org.locationtech.jts.noding.IteratedNoder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IteratedNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.IteratedNoder"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IteratedNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.IteratedNoder"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.IteratedNoder].node(java.util.Collection,int[])"
    - "[org.locationtech.jts.geom.TopologyException].<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: 4
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.IteratedNoder:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IteratedNoder:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IteratedNoder:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IteratedNoder:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IteratedNoder:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IteratedNoder:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IteratedNoder:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IteratedNoder:83"
        BranchSideFuncs:
        - "node(java.util.Collection,int[])"
    Callsites:
    - Src: "org.locationtech.jts.noding.IteratedNoder:84,1"
      Dst: "[org.locationtech.jts.noding.IteratedNoder].node(java.util.Collection,int[])"
    - Src: "org.locationtech.jts.noding.IteratedNoder:96,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.IteratedNoder:96,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:96,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:96,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.IteratedNoder:96,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.IteratedNoder].node(java.util.Collection,int[])"
    functionSourceFile: "org.locationtech.jts.noding.IteratedNoder"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IteratedNoder:112,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:113,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.noding.IteratedNoder:114,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:115,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:116,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 9
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:78,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:51,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.SegmentNodeList].addSplitEdges(java.util.Collection)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodeList()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:67"
        BranchSideFuncs:
        - "hasNext()"
        - "getNodeList()"
        - "iterator()"
        - "next()"
        - "addSplitEdges(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:63,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:63,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:65,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodeList()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:65,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addSplitEdges(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodeList()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "org.locationtech.jts.noding.SegmentNodeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addSplitEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - "[org.locationtech.jts.noding.SegmentNodeList].addCollapsedNodes()"
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:198"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
        - "createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:181,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:182,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addCollapsedNodes()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:184,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:186,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:187,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:189,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:194,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:86,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:87,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:87,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addCollapsedNodes()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromInsertedNodes(java.util.List)"
    - "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromExistingVertices(java.util.List)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 16
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:110"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "next()"
        - "add(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:100,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:102,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromInsertedNodes(java.util.List)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:103,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromExistingVertices(java.util.List)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:106,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:106,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:107,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:107,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:108,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromInsertedNodes(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.noding.SegmentNodeList].findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:150"
        BranchSideFuncs:
        - "findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:148"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:139,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:141,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:142,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:144,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:146,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:146,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:156"
        BranchSideFuncs:
        - "isInterior()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:155,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:158,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromExistingVertices(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:127"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:117"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:118,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:119,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:124,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].size()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 110
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 68
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.SegmentNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:62,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:72,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 228
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.SegmentString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:229,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:230,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:230,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionUses: 2
    ICount: 56
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:249"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:270"
        BranchSideFuncs:
        - "copy()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:248,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:250,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:260,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:260,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:267,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:69,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:33,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IteratedNoder].node(java.util.Collection,int[])"
    functionSourceFile: "org.locationtech.jts.noding.IteratedNoder"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IteratedNoder:112,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:113,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.noding.IteratedNoder:114,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:115,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.IteratedNoder:116,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15:207,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPoint()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPoint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setClickCountToFinishGesture(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setDrawBandLines(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setClickCountToFinishGesture(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setDrawBandLines(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].deactivate()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].activate(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Component].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:491"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:495"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].deactivate()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:493,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].activate(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496,1"
      Dst: "[java.awt.Component].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:59,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:67,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].getIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 75
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 44
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:93"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:93"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:119"
        BranchSideFuncs:
        - "isInteriorIntersection()"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:118"
        BranchSideFuncs:
        - "processNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:119"
        BranchSideFuncs:
        - "getIntersectionNum()"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:118"
        BranchSideFuncs:
        - "processNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:106"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:94,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:99,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:102,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:103,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:104,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:105,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:105,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:107,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:119,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionUses: 8
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:163,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:164,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 174
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:175,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:175,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:176,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:186,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 5
    returnType: "org.locationtech.jts.noding.SegmentNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:217"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:216"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:216"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:217,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.SegmentNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:62,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:72,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:152"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:151"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:153"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:159"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "addIntersection(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:154,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:156,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:157,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processNearVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:152"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:151"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:153"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:159"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "addIntersection(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:154,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:156,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:157,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].isDone()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Depth].depthAtLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.Depth].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:34"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Depth:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.Depth].getDepth(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    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: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Depth].setDepth(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Depth].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:54"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Depth].add(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:60"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Depth].isNull()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:82"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Depth].add(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - "[org.locationtech.jts.geomgraph.Depth].depthAtLocation(int)"
    functionUses: 2
    ICount: 27
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:100"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:87"
        BranchSideFuncs:
        - "getLocation(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:91"
        BranchSideFuncs:
        - "isNull(int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.Depth:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:95"
        BranchSideFuncs:
        - "depthAtLocation(int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Depth:89,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Depth:92,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Depth:93,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].depthAtLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.geomgraph.Depth].getDelta(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Depth].normalize()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    functionUses: 1
    ICount: 33
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Depth:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:130"
        BranchSideFuncs:
        - "isNull(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Depth:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Depth:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Depth:116,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.geomgraph.Depth].toString()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Depth"
    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: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Depth:134,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Depth:134,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Depth:134,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geomgraph.Depth:134,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    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: "org.locationtech.jts.noding.SegmentExtractingNoder:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(java.util.Collection)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:48,1"
      Dst: "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentExtractingNoder:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentExtractingNoder:56"
        BranchSideFuncs:
        - "extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.SegmentExtractingNoder:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:52,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:53,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:53,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:53,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:54,1"
      Dst: "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentExtractingNoder:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentExtractingNoder:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:60,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:61,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:63,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:63,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentExtractingNoder:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentExtractingNoder:56"
        BranchSideFuncs:
        - "extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.SegmentExtractingNoder:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:52,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:53,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:53,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:53,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:54,1"
      Dst: "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].extractSegments(org.locationtech.jts.noding.SegmentString,java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentExtractingNoder:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentExtractingNoder:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:60,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:61,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:63,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:63,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentExtractingNoder:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentExtractingNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentExtractingNoder"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hull(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:80,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:81,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:81,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:82,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:119,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:124,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:136,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:33"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:171,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:174,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:178,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:180,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:191,1"
      Dst: "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:200,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:201,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:206,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:209,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:210,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    functionSourceFile: "org.locationtech.jts.simplify.RingHullIndex"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHullIndex:19,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.RingHullIndex:22,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].ringArea(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].createRingHull(org.locationtech.jts.geom.LinearRing,boolean,double,org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:247,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:248,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:253,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].ringArea(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:255,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:255,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].createRingHull(org.locationtech.jts.geom.LinearRing,boolean,double,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:255,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:256,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:258,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].ringArea(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:264,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:264,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:264,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:265,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:266,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 38
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Area:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Area:95"
        BranchSideFuncs:
        - "createCoordinate()"
    - Branch String: "org.locationtech.jts.algorithm.Area:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Area:96,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - Src: "org.locationtech.jts.algorithm.Area:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].createRingHull(org.locationtech.jts.geom.LinearRing,boolean,double,org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.simplify.RingHull"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    - "double"
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull].<init>(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.Math].ceil(double)"
    - "[org.locationtech.jts.simplify.RingHull].setMinVertexNum(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.simplify.RingHull].setMaxAreaDelta(double)"
    - "[org.locationtech.jts.simplify.RingHullIndex].add(org.locationtech.jts.simplify.RingHull)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:272,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].<init>(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:274,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:274,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:275,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].setMinVertexNum(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:278,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:278,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:281,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].setMaxAreaDelta(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:283,1"
      Dst: "[org.locationtech.jts.simplify.RingHullIndex].add(org.locationtech.jts.simplify.RingHull)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.RingHull].<init>(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.simplify.RingHull].init(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.RingHull:65,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.RingHull:65,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].init(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].init(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].clone()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.LinkedRing].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - "[java.util.PriorityQueue].<init>()"
    - "[org.locationtech.jts.simplify.LinkedRing].size()"
    - "[org.locationtech.jts.simplify.RingHull].addCorner(int,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:97,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.RingHull:98,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.simplify.RingHull:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.RingHull:102,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.RingHull:103,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.RingHull:105,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:107,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.simplify.RingHull:108,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].size()"
    - Src: "org.locationtech.jts.simplify.RingHull:109,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].addCorner(int,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:483"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.simplify.LinkedRing].createNextLinks(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].createPrevLinks(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedRing:26,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.LinkedRing:29,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].createNextLinks(int)"
    - Src: "org.locationtech.jts.simplify.LinkedRing:30,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].createPrevLinks(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].createNextLinks(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedRing:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedRing:37"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].createPrevLinks(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedRing:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedRing:46"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].build()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:61,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].isItemsNodeEmpty(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].isNodeEmpty(int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:234"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:226,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].isItemsNodeEmpty(int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:236,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].isNodeEmpty(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].size()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].addCorner(int,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull].isConvex(org.locationtech.jts.simplify.LinkedRing,int)"
    - "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    - "[org.locationtech.jts.simplify.RingHull].area(org.locationtech.jts.simplify.LinkedRing,int)"
    - "[org.locationtech.jts.simplify.RingHull$Corner].<init>(int,int,int,double)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:115,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].isConvex(org.locationtech.jts.simplify.LinkedRing,int)"
    - Src: "org.locationtech.jts.simplify.RingHull:119,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:120,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:121,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].area(org.locationtech.jts.simplify.LinkedRing,int)"
    - Src: "org.locationtech.jts.simplify.RingHull:121,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].<init>(int,int,int,double)"
    - Src: "org.locationtech.jts.simplify.RingHull:122,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.RingHull].isConvex(org.locationtech.jts.simplify.LinkedRing,int)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.LinkedRing"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].prevCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].nextCoordinate(int)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:126,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].prevCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:127,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:128,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].nextCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].prevCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedRing:68,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].nextCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedRing:72,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].area(org.locationtech.jts.simplify.LinkedRing,int)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.LinkedRing"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].prevCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].nextCoordinate(int)"
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:133,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].prevCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:134,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:135,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].nextCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:136,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:396,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].<init>(int,int,int,double)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:271,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].setMinVertexNum(int)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].setMaxAreaDelta(double)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHullIndex].add(org.locationtech.jts.simplify.RingHull)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHullIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.RingHull"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHullIndex:25,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.List"
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.simplify.RingHull].getHull(org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:288,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:289,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:292,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:292,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].getHull(org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:293,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:294,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:297,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:299,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:300,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].getHull(org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull].compute(org.locationtech.jts.simplify.RingHullIndex)"
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:85,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].compute(org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.RingHull:86,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.RingHull:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.simplify.RingHull:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].compute(org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].isEmpty()"
    - "[org.locationtech.jts.simplify.LinkedRing].size()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.simplify.RingHull$Corner].isRemoved(org.locationtech.jts.simplify.LinkedRing)"
    - "[org.locationtech.jts.simplify.RingHull].isAtTarget(org.locationtech.jts.simplify.RingHull$Corner)"
    - "[org.locationtech.jts.simplify.RingHull].isRemovable(org.locationtech.jts.simplify.RingHull$Corner,org.locationtech.jts.simplify.RingHullIndex)"
    - "[org.locationtech.jts.simplify.RingHull].removeCorner(org.locationtech.jts.simplify.RingHull$Corner,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:140,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.simplify.RingHull:141,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].size()"
    - Src: "org.locationtech.jts.simplify.RingHull:142,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.simplify.RingHull:144,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].isRemoved(org.locationtech.jts.simplify.LinkedRing)"
    - Src: "org.locationtech.jts.simplify.RingHull:146,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].isAtTarget(org.locationtech.jts.simplify.RingHull$Corner)"
    - Src: "org.locationtech.jts.simplify.RingHull:152,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].isRemovable(org.locationtech.jts.simplify.RingHull$Corner,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.RingHull:153,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].removeCorner(org.locationtech.jts.simplify.RingHull$Corner,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].isRemoved(org.locationtech.jts.simplify.LinkedRing)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.LinkedRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:317,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:317,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.RingHull].isAtTarget(org.locationtech.jts.simplify.RingHull$Corner)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.RingHull$Corner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].size()"
    - "[org.locationtech.jts.simplify.RingHull$Corner].getArea()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:160,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].size()"
    - Src: "org.locationtech.jts.simplify.RingHull:165,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].getArea()"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].isRemovable(org.locationtech.jts.simplify.RingHull$Corner,org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.RingHull$Corner"
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull$Corner].envelope(org.locationtech.jts.simplify.LinkedRing)"
    - "[org.locationtech.jts.simplify.RingHull].hasIntersectingVertex(org.locationtech.jts.simplify.RingHull$Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.simplify.RingHull)"
    - "[org.locationtech.jts.simplify.RingHullIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:194,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].envelope(org.locationtech.jts.simplify.LinkedRing)"
    - Src: "org.locationtech.jts.simplify.RingHull:195,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].hasIntersectingVertex(org.locationtech.jts.simplify.RingHull$Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.simplify.RingHull)"
    - Src: "org.locationtech.jts.simplify.RingHull:201,1"
      Dst: "[org.locationtech.jts.simplify.RingHullIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.simplify.RingHull:201,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.simplify.RingHull:201,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.simplify.RingHull:201,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].envelope(org.locationtech.jts.simplify.LinkedRing)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.LinkedRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:301,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull].hasIntersectingVertex(org.locationtech.jts.simplify.RingHull$Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.simplify.RingHull)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.simplify.RingHull$Corner"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.simplify.RingHull"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.simplify.RingHull$Corner].isVertex(int)"
    - "[org.locationtech.jts.simplify.RingHull].getCoordinate(int)"
    - "[org.locationtech.jts.simplify.RingHull$Corner].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.LinkedRing)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:222,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.simplify.RingHull:226,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].isVertex(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:229,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:231,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.LinkedRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.simplify.RingHull].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:242,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:162,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:164,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:165,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].isVertex(int)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:278"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.RingHull].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:238,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.LinkedRing)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.simplify.LinkedRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:310,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:313,1"
      Dst: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:76,1"
      Dst: "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:78,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.simplify.RingHullIndex].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHullIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.simplify.RingHull].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHullIndex:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHullIndex:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHullIndex:35"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHullIndex:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHullIndex:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHullIndex:34"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHullIndex:29,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.RingHullIndex:30,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.simplify.RingHullIndex:30,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.simplify.RingHullIndex:30,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.simplify.RingHullIndex:31,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].getEnvelope()"
    - Src: "org.locationtech.jts.simplify.RingHullIndex:32,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.simplify.RingHullIndex:33,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.RingHull].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:77,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.simplify.RingHull].removeCorner(org.locationtech.jts.simplify.RingHull$Corner,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.RingHull$Corner"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull$Corner].getIndex()"
    - "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].remove(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - "[org.locationtech.jts.simplify.RingHull$Corner].getArea()"
    - "[org.locationtech.jts.simplify.RingHull].addCorner(int,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull:181,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].getIndex()"
    - Src: "org.locationtech.jts.simplify.RingHull:182,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:183,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:184,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].remove(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:185,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - Src: "org.locationtech.jts.simplify.RingHull:186,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].getArea()"
    - Src: "org.locationtech.jts.simplify.RingHull:189,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].addCorner(int,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].getIndex()"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].remove(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedRing:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedRing:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedRing:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedRing:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedRing:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedRing:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedRing:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.LinkedRing:94,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.simplify.LinkedRing:94,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.simplify.LinkedRing:97,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.simplify.LinkedRing:98,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:135,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:136,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:157,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:158,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:216,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:218,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:219,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:220,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:231,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:232,1"
      Dst: "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:233,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:234,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hullByAreaDelta(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:99,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:100,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:100,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:101,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:119,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:124,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:171,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:174,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:178,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:180,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:119,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:124,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:136,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:171,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:174,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:178,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:180,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonAll(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:191,1"
      Dst: "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:200,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:201,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:206,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:209,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:210,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computeMultiPolygonEach(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:216,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:218,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:219,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:220,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].computePolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:231,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:232,1"
      Dst: "[org.locationtech.jts.simplify.RingHullIndex].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:233,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:234,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].initPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].ringArea(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].createRingHull(org.locationtech.jts.geom.LinearRing,boolean,double,org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:247,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:248,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:253,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].ringArea(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:255,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:255,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].createRingHull(org.locationtech.jts.geom.LinearRing,boolean,double,org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:255,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:256,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:258,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].ringArea(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:264,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:264,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:264,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:265,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:266,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].createRingHull(org.locationtech.jts.geom.LinearRing,boolean,double,org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.simplify.RingHull"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    - "double"
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull].<init>(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.Math].ceil(double)"
    - "[org.locationtech.jts.simplify.RingHull].setMinVertexNum(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.simplify.RingHull].setMaxAreaDelta(double)"
    - "[org.locationtech.jts.simplify.RingHullIndex].add(org.locationtech.jts.simplify.RingHull)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:272,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].<init>(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:274,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:274,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:275,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].setMinVertexNum(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:278,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:278,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:281,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].setMaxAreaDelta(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:283,1"
      Dst: "[org.locationtech.jts.simplify.RingHullIndex].add(org.locationtech.jts.simplify.RingHull)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].polygonHull(org.locationtech.jts.geom.Polygon,java.util.List,org.locationtech.jts.simplify.RingHullIndex)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.List"
    - "org.locationtech.jts.simplify.RingHullIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.simplify.RingHull].getHull(org.locationtech.jts.simplify.RingHullIndex)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.PolygonHullSimplifier:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.PolygonHullSimplifier:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:288,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:289,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:292,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:292,1"
      Dst: "[org.locationtech.jts.simplify.RingHull].getHull(org.locationtech.jts.simplify.RingHullIndex)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:293,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:294,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:297,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:299,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:300,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.json.simple.JSONObject].<init>()"
    functionSourceFile: "org.json.simple.JSONObject"
    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: "org.json.simple.JSONObject:24,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].<init>(java.util.Map)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:34,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.io.Writer].write(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[org.json.simple.JSONObject].escape(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:48"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:53"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:52"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:57"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:69"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:68"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:58"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:61"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:49,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.json.simple.JSONObject:56,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONObject:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONObject:62,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[org.json.simple.JSONObject].escape(java.lang.String)"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.json.simple.JSONObject].writeJSONString(java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:73,1"
      Dst: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.io.Writer].write(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[org.json.simple.JSONObject].escape(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:48"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:53"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:52"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:57"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:69"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:68"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:58"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:61"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:49,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.json.simple.JSONObject:56,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONObject:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONObject:62,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[org.json.simple.JSONObject].escape(java.lang.String)"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:86"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:89"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:88"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:94"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:103"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:102"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:95"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:98"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:89,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONObject:91,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.json.simple.JSONObject:91,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.json.simple.JSONObject:93,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONObject:94,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONObject:100,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONObject:104,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.json.simple.JSONObject].toJSONString()"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:108,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:86"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:89"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:88"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:94"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:103"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:102"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:95"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:98"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:89,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONObject:91,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.json.simple.JSONObject:91,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.json.simple.JSONObject:93,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONObject:94,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONObject:100,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.json.simple.JSONObject:101,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONObject:104,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:113"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:116"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:112,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONObject:114,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONObject:116,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONObject:119,1"
      Dst: "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:121,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.json.simple.JSONObject].toString()"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONObject].toJSONString()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:125,1"
      Dst: "[org.json.simple.JSONObject].toJSONString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].toJSONString()"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:108,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].toString(java.lang.String,java.lang.Object)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:129,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONObject:130,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONObject:131,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].toJSONString(java.lang.String,java.lang.Object,java.lang.StringBuffer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:113"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:116"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:112,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONObject:114,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONObject:116,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONObject:119,1"
      Dst: "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:121,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.json.simple.JSONObject].escape(java.lang.String)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONValue].escape(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONObject:144,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12:153,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12].colorChanged(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderEnabled(boolean)"
    - "[java.awt.Component].getBackground()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBackground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleBorderEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleFill(java.awt.Color)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitle(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendBorderEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendStatsEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendMetricsEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendFill(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:163,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:164,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:165,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:166,1"
      Dst: "[java.awt.Component].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleBorderEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleFill(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:171,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:171,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:173,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendBorderEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendStatsEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendMetricsEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendFill(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBackground(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleBorderEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleFill(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitle(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendBorderEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendStatsEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendMetricsEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendFill(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:366,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.SAXTarget$SAXLocator:89,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].getColumnNumber()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].getLineNumber()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].getPublicId()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].getSystemId()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].getNode()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].setNode(java.lang.Object)"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRingPts(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRing(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:42,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRingPts(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:43,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRing(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 59
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].addHole(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:70,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].addHole(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].hasShell()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getShell()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:88,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].addHole(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:92,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRingPts(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[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: 31
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:108"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:107"
        BranchSideFuncs:
        - "setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
        - "addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:113"
        BranchSideFuncs:
        - "dest()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:112"
        BranchSideFuncs:
        - "nextResult()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:98"
        BranchSideFuncs:
        - "closeRing()"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:97"
        BranchSideFuncs:
        - "getEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:96,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:98,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:99,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:109,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:110,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:111,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:115,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:116,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].computeRing(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:121"
        BranchSideFuncs:
        - "createLinearRing(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:120"
        BranchSideFuncs:
        - "createLinearRing(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:121,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:122,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:122,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].findEdgeRingContaining(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 5
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 18
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:166"
        BranchSideFuncs:
        - "hasNext()"
        - "contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:162"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:158,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:159,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:161,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getLocator()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 169
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:173"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
        - "getRing()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:171,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getLocator()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:180,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getLocator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:180,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].contains(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:197"
        BranchSideFuncs:
        - "isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:194,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:196,1"
      Dst: "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:198,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isPointInOrOut(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:213"
        BranchSideFuncs:
        - "getCoordinates()"
        - "locate(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:202"
        BranchSideFuncs:
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:203,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:204,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:234"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:233"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:233"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:229,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:231,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing:234,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getEdge()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$8].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$8:265,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$8].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$8:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$8:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$8:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$8:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$8:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$8:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:271,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:272,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:274,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:274,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:276,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:278,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:280,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$8:281,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.xml.sax.Attributes"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:497,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:498,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:499,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:500,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:503,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:504,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:506,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:508,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    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: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:530"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:529"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:526,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:527,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:528,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:49,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.geom.Point:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.Point:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Point:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.Point:50,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.Point:50,1"
      Dst: "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.Point:60,1"
      Dst: "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:68"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "getFactory()"
      - BranchSide: "org.locationtech.jts.geom.Point:67"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.Point:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:68"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.Point:67"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Point:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.Point:66,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.Point:68,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:68,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionUses: 7
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:73"
        BranchSideFuncs:
        - "isEmpty()"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.geom.Point:72"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:73,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:74,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:78"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:79,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].isSimple()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getDimension()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 44
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getBoundaryDimension()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 94
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:99,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.Point:100,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:106,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.Point:107,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getGeometryType()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 116
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getBoundary()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:129,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Point:129,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:311,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].computeEnvelopeInternal()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getY(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:135"
        BranchSideFuncs:
        - "getX(int)"
        - "<init>()"
        - "expandToInclude(double,double)"
        - "getY(int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:133,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:134,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.geom.Point:137,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.geom.Point:137,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.geom.Point:137,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 31
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:447"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:446"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:440,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Point].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].equal(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 2
    ICount: 20
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Point:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:147"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.geom.Point:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:147"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.geom.Point:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:150"
        BranchSideFuncs:
        - "equal(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
        - "getCoordinate()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:142,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.Point:145,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:145,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:151,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.Point:151,1"
      Dst: "[org.locationtech.jts.geom.Geometry].equal(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.CoordinateCountFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.CoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.CoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 8
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:156"
        BranchSideFuncs:
        - "getCoordinate()"
        - "filter(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.Point:155"
        BranchSideFuncs:
        - "getCoordinate()"
        - "filter(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:155,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:156,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.Point:156,1"
      Dst: "[org.locationtech.jts.geom.CoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 160
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.coverage.VertexRingCounter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].isGeometryChanged()"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isGeometryChanged()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].isGeometryChanged()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].isGeometryChanged()"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isGeometryChanged()"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].isGeometryChanged()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isGeometryChanged()"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    functionUses: 6
    ICount: 11
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:162"
        BranchSideFuncs:
        - "filter(org.locationtech.jts.geom.CoordinateSequence,int)"
        - "isGeometryChanged()"
    - Branch String: "org.locationtech.jts.geom.Point:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:166"
        BranchSideFuncs:
        - "geometryChanged()"
      - BranchSide: "org.locationtech.jts.geom.Point:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:161,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:163,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.geom.Point:164,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    - Src: "org.locationtech.jts.geom.Point:165,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PointExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.InputExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.GeometryFunctions$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionUses: 4
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:169,1"
      Dst: "[org.locationtech.jts.geom.GeometryFilter].filter(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryComponentFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineMerger$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.dissolve.LineDissolver$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionUses: 5
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:173,1"
      Dst: "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].clone()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].copyInternal()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:188,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.geom.Point:188,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.Point:60,1"
      Dst: "[org.locationtech.jts.geom.Point].init(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:192,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].reverseInternal()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    functionUses: 1
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:197,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Point:197,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.geom.Point:197,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].normalize()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].compareToSameClass(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:207,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.Point:207,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Point].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.locationtech.jts.geom.CoordinateSequenceComparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:213,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequenceComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceComparator].compareCoordinate(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:88,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:112,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compareCoordinate(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 20
  - functionName: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compareCoordinate(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequenceComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:135,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:137,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequenceComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:44,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Point].getTypeCode()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 216
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeTestSVG(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jtstest.test.Testable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jtstest.test.Testable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:37,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    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: "org.locationtech.jtstest.util.io.SVGWriter:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:42,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:48,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:51,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:57,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:57,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:59,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:73,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:80,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:81,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1:81,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:301,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.geom.Envelope:306,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryStyled(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryStyled(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:88,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryStyled(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:92,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:92,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:92,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:93,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:102,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:102,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:104,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:107,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:109,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometry(org.locationtech.jts.geom.Geometry,int,java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:162,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:162,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:164,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometry(org.locationtech.jts.geom.Geometry,int,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.text.DecimalFormat"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - "[java.text.DecimalFormatSymbols].<init>()"
    - "[java.text.DecimalFormatSymbols].setDecimalSeparator(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].stringOfChar(char,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.text.DecimalFormat].<init>(java.lang.String,java.text.DecimalFormatSymbols)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:56,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:58,1"
      Dst: "[java.text.DecimalFormatSymbols].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:59,1"
      Dst: "[java.text.DecimalFormatSymbols].setDecimalSeparator(char)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:61,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].stringOfChar(char,int)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:61,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:62,1"
      Dst: "[java.text.DecimalFormat].<init>(java.lang.String,java.text.DecimalFormatSymbols)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].ceil(double)"
    functionUses: 2
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:258"
        BranchSideFuncs:
        - "getScale()"
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].ceil(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].stringOfChar(char,int)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:73,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:75,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:77,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometry(org.locationtech.jts.geom.Geometry,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendPoint(org.locationtech.jts.geom.Coordinate,int,java.io.Writer,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendLineString(org.locationtech.jts.geom.LineString,int,boolean,java.io.Writer)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygon(org.locationtech.jts.geom.Polygon,int,java.io.Writer)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiPoint(org.locationtech.jts.geom.MultiPoint,int,java.io.Writer)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiLineString(org.locationtech.jts.geom.MultiLineString,int,boolean,java.io.Writer)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiPolygon(org.locationtech.jts.geom.MultiPolygon,int,java.io.Writer)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,java.io.Writer)"
    - "[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()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:179,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:183,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:183,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:183,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendPoint(org.locationtech.jts.geom.Coordinate,int,java.io.Writer,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:187,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendLineString(org.locationtech.jts.geom.LineString,int,boolean,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:190,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygon(org.locationtech.jts.geom.Polygon,int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:193,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiPoint(org.locationtech.jts.geom.MultiPoint,int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:196,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiLineString(org.locationtech.jts.geom.MultiLineString,int,boolean,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:199,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiPolygon(org.locationtech.jts.geom.MultiPolygon,int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:202,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:205,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:205,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:206,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:206,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:206,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:205,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 17
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:451"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:451"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:453,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendPoint(org.locationtech.jts.geom.Coordinate,int,java.io.Writer,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:241,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:241,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:241,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:241,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:241,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendLineString(org.locationtech.jts.geom.LineString,int,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePoints(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:327,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:328,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:329,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:329,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePoints(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePoints(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,java.io.Writer)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:303"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:307"
      Branch Sides: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:307"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:299,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:303,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:305,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:312,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].writeNumber(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:254,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:254,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:254,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].writeNumber(double)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:254,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:254,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:254,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:254,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].writeNumber(double)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.NumberFormat].format(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:266,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygon(org.locationtech.jts.geom.Polygon,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygonPolygon(org.locationtech.jts.geom.Polygon,int,boolean,java.io.Writer)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygonPath(org.locationtech.jts.geom.Polygon,int,boolean,java.io.Writer)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:223"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:220,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:221,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygonPolygon(org.locationtech.jts.geom.Polygon,int,boolean,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:224,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygonPath(org.locationtech.jts.geom.Polygon,int,boolean,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygonPolygon(org.locationtech.jts.geom.Polygon,int,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "int"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePoints(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:343,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:344,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:345,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:345,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:345,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePoints(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygonPath(org.locationtech.jts.geom.Polygon,int,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "int"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePath(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:355"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:358"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:352,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:353,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:354,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:354,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:354,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePath(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:355,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:357,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendSequencePath(org.locationtech.jts.geom.CoordinateSequence,int,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,java.io.Writer)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:294"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:287"
      Branch Sides: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:287"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:279,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:283,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].indent(int,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:285,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:285,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:285,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:285,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:292,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,int,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiPoint(org.locationtech.jts.geom.MultiPoint,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendPoint(org.locationtech.jts.geom.Coordinate,int,java.io.Writer,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:377"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:376"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:384"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:373,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:374,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:378,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:382,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:382,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:382,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:382,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendPoint(org.locationtech.jts.geom.Coordinate,int,java.io.Writer,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 56
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:96"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiLineString(org.locationtech.jts.geom.MultiLineString,int,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "int"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendLineString(org.locationtech.jts.geom.LineString,int,boolean,java.io.Writer)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:407"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:406"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:400,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:405,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:405,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendLineString(org.locationtech.jts.geom.LineString,int,boolean,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendMultiPolygon(org.locationtech.jts.geom.MultiPolygon,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygon(org.locationtech.jts.geom.Polygon,int,java.io.Writer)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:425"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:420,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:424,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:424,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendPolygon(org.locationtech.jts.geom.Polygon,int,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometry(org.locationtech.jts.geom.Geometry,int,java.io.Writer)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.SVGWriter:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.SVGWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:440,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:444,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:444,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].appendGeometry(org.locationtech.jts.geom.Geometry,int,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeSVG(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:37,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:48,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:51,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:57,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:57,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:59,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:73,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:37,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:42,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:48,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:51,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:57,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:57,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:59,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:73,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:80,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:81,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryElement(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryStyled(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryStyled(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:88,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeGeometryStyled(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String,java.lang.StringBuffer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:92,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:92,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:92,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:93,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:102,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryCollectionMapper].map(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCollectionMapper"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCollectionMapper].<init>(org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    - "[org.locationtech.jts.geom.util.GeometryCollectionMapper].map(org.locationtech.jts.geom.GeometryCollection)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:35,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCollectionMapper].<init>(org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:36,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCollectionMapper].map(org.locationtech.jts.geom.GeometryCollection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCollectionMapper].<init>(org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCollectionMapper"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCollectionMapper].map(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCollectionMapper"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$4].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$3].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.BufferFunctions$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$2].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.CubicBezierCurve$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryOverlay$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCollectionMapper:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:53"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "isEmpty()"
        - "map(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:52"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "getFactory()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryCollectionMapper:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:46"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:47,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:49,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:49,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:51,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:53,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCollectionMapper].<init>(org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCollectionMapper"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCollectionMapper].map(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCollectionMapper"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$4].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$3].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.BufferFunctions$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.TriangleFunctions$2].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.CubicBezierCurve$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryOverlay$1].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCollectionMapper:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:53"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "isEmpty()"
        - "map(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:52"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "getFactory()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryCollectionMapper:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCollectionMapper:46"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:47,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:49,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:49,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:51,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCollectionMapper:53,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtslab.clean.HoleRemover"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].map(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.HoleRemover].access$100(org.locationtech.jtslab.clean.HoleRemover)"
    - "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].clean(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:63"
        BranchSideFuncs:
        - "access$100(org.locationtech.jtslab.clean.HoleRemover)"
        - "clean(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:62,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover].access$100(org.locationtech.jtslab.clean.HoleRemover)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:62,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].clean(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover].access$100(org.locationtech.jtslab.clean.HoleRemover)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 0
    returnType: "org.locationtech.jtslab.clean.HoleRemover$Predicate"
    argCount: 1
    argTypes:
    - "org.locationtech.jtslab.clean.HoleRemover"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].clean(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jtslab.clean.HoleRemover$Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    - "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].getResult()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:70,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:71,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jtslab.clean.HoleRemover$Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].getResult()"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall].value(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtslab.clean.HoleRemover$Predicate].value(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 31
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:95"
        BranchSideFuncs:
        - "getInteriorRingN(int)"
        - "value(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:94"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:83"
        BranchSideFuncs:
        - "getFactory()"
        - "createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:98"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
        - "getExteriorRing()"
        - "toLinearRingArray(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:85,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:87,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:88,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:89,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:90,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$Predicate].value(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:91,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:95,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:100,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:99,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:135,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:136,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover,org.locationtech.jtslab.clean.HoleRemover$1)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtslab.clean.HoleRemover"
    - "org.locationtech.jtslab.clean.HoleRemover$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:59,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].createNode(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Key].<init>(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.index.bintree.Key].getInterval()"
    - "[org.locationtech.jts.index.bintree.Key].getLevel()"
    - "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:26,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].<init>(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Node:29,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].getInterval()"
    - Src: "org.locationtech.jts.index.bintree.Node:29,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].getLevel()"
    - Src: "org.locationtech.jts.index.bintree.Node:29,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Key].<init>(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.bintree.Key].computeKey(org.locationtech.jts.index.bintree.Interval)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Key:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Key:44,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].computeKey(org.locationtech.jts.index.bintree.Interval)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Key].computeKey(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Key].computeLevel(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.index.bintree.Interval].<init>()"
    - "[org.locationtech.jts.index.bintree.Key].computeInterval(int,org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Key:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Key:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Key:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Key:57,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].computeLevel(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Key:58,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Key:59,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].computeInterval(int,org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Key:61,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.bintree.Key].computeLevel(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].getWidth()"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Key:29,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getWidth()"
    - Src: "org.locationtech.jts.index.bintree.Key:31,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getWidth()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:41,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:42,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:78,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:101,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].<init>()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    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: "org.locationtech.jts.index.bintree.Interval:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Key].computeInterval(int,org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    - "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - "[java.lang.Math].floor(double)"
    - "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Key:69,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    - Src: "org.locationtech.jts.index.bintree.Key:71,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - Src: "org.locationtech.jts.index.bintree.Key:71,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.index.bintree.Key:72,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:33,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:36,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:44"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:68,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Interval:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:71"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.bintree.Key].getInterval()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.bintree.Interval"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Key].getLevel()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Key"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.NodeBase].<init>()"
    - "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - "[org.locationtech.jts.index.bintree.Interval].getMax()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:48,1"
      Dst: "[org.locationtech.jts.index.bintree.NodeBase].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Node:51,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - Src: "org.locationtech.jts.index.bintree.Node:51,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].createExpanded(org.locationtech.jts.index.bintree.Node,org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.bintree.Node"
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].<init>(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.index.bintree.Interval].expandToInclude(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.index.bintree.Node].createNode(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Node:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:37"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Node:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:35,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].<init>(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Node:36,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].expandToInclude(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Node:38,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].createNode(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Node:39,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.bintree.Interval].<init>(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Interval:35,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:44"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.bintree.Interval].expandToInclude(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Interval:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:53"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.bintree.Node].createNode(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Key].<init>(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.index.bintree.Key].getInterval()"
    - "[org.locationtech.jts.index.bintree.Key].getLevel()"
    - "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:26,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].<init>(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Node:29,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].getInterval()"
    - Src: "org.locationtech.jts.index.bintree.Node:29,1"
      Dst: "[org.locationtech.jts.index.bintree.Key].getLevel()"
    - Src: "org.locationtech.jts.index.bintree.Node:29,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    - "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Node:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Node:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Node:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:103,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Node:103,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.bintree.Node:104,1"
      Dst: "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - Src: "org.locationtech.jts.index.bintree.Node:111,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    - Src: "org.locationtech.jts.index.bintree.Node:112,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:68,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - "[org.locationtech.jts.index.bintree.Interval].getMax()"
    - "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    - "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:138,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - Src: "org.locationtech.jts.index.bintree.Node:143,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    - Src: "org.locationtech.jts.index.bintree.Node:146,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    - Src: "org.locationtech.jts.index.bintree.Node:147,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Interval:31,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.NodeBase].<init>()"
    - "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - "[org.locationtech.jts.index.bintree.Interval].getMax()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:48,1"
      Dst: "[org.locationtech.jts.index.bintree.NodeBase].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Node:51,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - Src: "org.locationtech.jts.index.bintree.Node:51,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.NodeBase].<init>()"
    - "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - "[org.locationtech.jts.index.bintree.Interval].getMax()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:48,1"
      Dst: "[org.locationtech.jts.index.bintree.NodeBase].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Node:51,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - Src: "org.locationtech.jts.index.bintree.Node:51,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].getInterval()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.bintree.Interval"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Node].isSearchMatch(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].overlaps(org.locationtech.jts.index.bintree.Interval)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:60,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].overlaps(org.locationtech.jts.index.bintree.Interval)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].overlaps(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].overlaps(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:57,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].overlaps(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].overlaps(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Interval:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:62"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.bintree.Node].getNode(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - "[org.locationtech.jts.index.bintree.Node].getSubnode(int)"
    - "[org.locationtech.jts.index.bintree.Node].getNode(org.locationtech.jts.index.bintree.Interval)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Node:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:70,1"
      Dst: "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - Src: "org.locationtech.jts.index.bintree.Node:74,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].getSubnode(int)"
    - Src: "org.locationtech.jts.index.bintree.Node:76,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].getNode(org.locationtech.jts.index.bintree.Interval)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.bintree.Node].getSubnode(int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Node:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:124,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - "[org.locationtech.jts.index.bintree.Interval].getMax()"
    - "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    - "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:138,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - Src: "org.locationtech.jts.index.bintree.Node:143,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    - Src: "org.locationtech.jts.index.bintree.Node:146,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    - Src: "org.locationtech.jts.index.bintree.Node:147,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.bintree.Node].find(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.index.bintree.NodeBase"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - "[org.locationtech.jts.index.bintree.Node].find(org.locationtech.jts.index.bintree.Interval)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Node:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Node:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:89,1"
      Dst: "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - Src: "org.locationtech.jts.index.bintree.Node:95,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].find(org.locationtech.jts.index.bintree.Interval)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    - "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Node:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Node:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Node:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:103,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    - Src: "org.locationtech.jts.index.bintree.Node:103,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.bintree.Node:104,1"
      Dst: "[org.locationtech.jts.index.bintree.NodeBase].getSubnodeIndex(org.locationtech.jts.index.bintree.Interval,double)"
    - Src: "org.locationtech.jts.index.bintree.Node:111,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    - Src: "org.locationtech.jts.index.bintree.Node:112,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].insert(org.locationtech.jts.index.bintree.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.bintree.Node].getSubnode(int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Node:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Node:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Node:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:124,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.bintree.Node].createSubnode(int)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.index.bintree.Node"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - "[org.locationtech.jts.index.bintree.Interval].getMax()"
    - "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    - "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Node:138,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    - Src: "org.locationtech.jts.index.bintree.Node:143,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    - Src: "org.locationtech.jts.index.bintree.Node:146,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    - Src: "org.locationtech.jts.index.bintree.Node:147,1"
      Dst: "[org.locationtech.jts.index.bintree.Node].<init>(org.locationtech.jts.index.bintree.Interval,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].<init>()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].getChainStartIndices(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:46,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:47,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:48,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].getChainStartIndices(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getStartIndexes()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 51
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMinX(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:55"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMaxX(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:61"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersects(org.locationtech.jts.geomgraph.index.MonotoneChainEdge,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:71,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:83,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 7
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 5
    ICount: 33
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:102"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:102"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:117"
        BranchSideFuncs:
        - "computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:116"
        BranchSideFuncs:
        - "computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:99,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:112,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 16
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    functionUses: 3
    ICount: 60
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:144"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:144"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:162"
        BranchSideFuncs:
        - "setIsolated(boolean)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:161"
        BranchSideFuncs:
        - "isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:180"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:183"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:182"
        BranchSideFuncs:
        - "isProper()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs:
        - "copy()"
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:145,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:150,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:156,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:158,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:177,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:180,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:184,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:184,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isAdjacentSegments(int,int)"
    - "[org.locationtech.jts.geomgraph.Edge].isClosed()"
    - "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:129"
        BranchSideFuncs:
        - "getIntersectionNum()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:129"
        BranchSideFuncs:
        - "isAdjacentSegments(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:119"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:129"
        BranchSideFuncs:
        - "getNumPoints()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120"
        BranchSideFuncs:
        - "getNumPoints()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:117,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:118,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isAdjacentSegments(int,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isClosed()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:121,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isAdjacentSegments(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:34,1"
      Dst: "[java.lang.Math].abs(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isClosed()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:112,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "java.util.Collection[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:197"
        BranchSideFuncs:
        - "isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196"
        BranchSideFuncs:
        - "isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isIntersection(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 14
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:208"
        BranchSideFuncs:
        - "isIntersection(org.locationtech.jts.geom.Coordinate)"
        - "next()"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:203,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:203,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:204,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:205,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:206,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isIntersection(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 153
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.geomgraph.Edge].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:154,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.geomgraph.Edge:155,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 169
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getEdgeDistance(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:191"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:190"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int,double)"
    - Branch String: "org.locationtech.jts.geomgraph.Edge:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:190"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int,double)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:170,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.Edge:172,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getEdgeDistance(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:182,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.Edge:191,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 3
    returnType: "org.locationtech.jts.geomgraph.EdgeIntersection"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersection].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:52,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersection].<init>(org.locationtech.jts.geom.Coordinate,int,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:53,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:57,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 1
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:136,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 5
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:76,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.geom.Envelope:77,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:83,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 7
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 5
    ICount: 33
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:102"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:102"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:117"
        BranchSideFuncs:
        - "computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:116"
        BranchSideFuncs:
        - "computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:99,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:103,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:112,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 16
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].overlaps(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 1
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:136,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:88,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:93,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setLayer(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:102,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:103,1"
      Dst: "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:104,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    - "[javax.swing.JSlider].setValue(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[javax.swing.SpinnerNumberModel].setValue(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[java.lang.Double].valueOf(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 121
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:113,1"
      Dst: "[javax.swing.JSlider].setValue(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:115,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[javax.swing.SpinnerNumberModel].setValue(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:131,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JPanel"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:58,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getColor()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getColor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:71,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JComboBox"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].setSelectedIndex(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:566,1"
      Dst: "[javax.swing.JComboBox].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JComboBox"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].setSelectedIndex(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:547"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:548"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:547"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:549"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:548"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:549"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:550"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:549"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:550,1"
      Dst: "[javax.swing.JComboBox].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:516,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].update()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:193,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:193,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:193,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].update(javax.swing.JPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:339,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].update(javax.swing.JPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:340,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:340,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].update(javax.swing.JPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JPanel"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:469"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:472"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:471"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:482"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:481"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:469,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:469,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:470,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:473,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:482,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:483,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:483,1"
      Dst: "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:483,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    - "[javax.swing.JSlider].setValue(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[javax.swing.SpinnerNumberModel].setValue(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[java.lang.Double].valueOf(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 121
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:113,1"
      Dst: "[javax.swing.JSlider].setValue(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:115,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[javax.swing.SpinnerNumberModel].setValue(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:131,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].stylePanel()"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:138,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:138,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:139,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:139,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].stylePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:147,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:157,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:158,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:159,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].stylePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "javax.swing.JPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.GridBagLayout].<init>()"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[javax.swing.Box].createVerticalGlue()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.Box$Filler].<init>(java.awt.Dimension,java.awt.Dimension,java.awt.Dimension)"
    - "[javax.swing.JTextField].<init>()"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent[])"
    - "[javax.swing.text.JTextComponent].getDocument()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.text.Document].addDocumentListener(javax.swing.event.DocumentListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.JComboBox].<init>(java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.JComboBox].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createSynchButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.SpinnerNumberModel].<init>(double,double,double,double)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$13].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createOpacitySlider(javax.swing.event.ChangeListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$14].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$15].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$16].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$17].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$18].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$19].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$20].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$21].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$22].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$23].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$24].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$25].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$26].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$27].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$28].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionUses: 0
    ICount: 376
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:164,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:165,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:165,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:168,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:169,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:171,1"
      Dst: "[javax.swing.Box].createVerticalGlue()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:171,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:174,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:177,1"
      Dst: "[javax.swing.Box$Filler].<init>(java.awt.Dimension,java.awt.Dimension,java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:180,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:181,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:182,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:183,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:185,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:186,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:188,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:189,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent[])"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:199,1"
      Dst: "[javax.swing.text.JTextComponent].getDocument()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:199,1"
      Dst: "[javax.swing.text.Document].addDocumentListener(javax.swing.event.DocumentListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:241,1"
      Dst: "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:242,1"
      Dst: "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:245,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:245,1"
      Dst: "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:256,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:264,1"
      Dst: "[javax.swing.JComboBox].<init>(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:265,1"
      Dst: "[javax.swing.JComboBox].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:282,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:301,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:301,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createSynchButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:312,1"
      Dst: "[javax.swing.SpinnerNumberModel].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$13].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createOpacitySlider(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:343,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$14].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:354,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$15].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$16].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:381,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$17].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:392,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$18].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:403,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$19].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:414,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$20].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:430,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$21].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:438,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$22].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:449,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$23].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:461,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$24].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:475,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$25].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:484,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$26].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:499,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$27].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$28].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getPaletteType(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].getSelectedItem()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:539"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:541"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:536,1"
      Dst: "[javax.swing.JComboBox].getSelectedItem()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:539,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JComboBox"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].setSelectedIndex(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:547"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:548"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:547"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:549"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:548"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:549"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:550"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:549"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:550,1"
      Dst: "[javax.swing.JComboBox].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getVertexSymbol(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].getSelectedItem()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:560"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:556"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:557,1"
      Dst: "[javax.swing.JComboBox].getSelectedItem()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:560,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JComboBox"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].setSelectedIndex(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:566,1"
      Dst: "[javax.swing.JComboBox].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].lineColorFromFill(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].saturate(java.awt.Color,double)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:570,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].saturate(java.awt.Color,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].saturate(java.awt.Color,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[java.awt.Color].getHSBColor(float,float,float)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:58,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:59,1"
      Dst: "[java.awt.Color].getHSBColor(float,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:33"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createSynchButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:575,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:576,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:576,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:577,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:578,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:579,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:580,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].createOpacitySlider(javax.swing.event.ChangeListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JSlider"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JSlider].<init>(int,int,int,int)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JSlider].addChangeListener(javax.swing.event.ChangeListener)"
    - "[javax.swing.JSlider].setMajorTickSpacing(int)"
    - "[javax.swing.JSlider].setPaintTicks(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:585,1"
      Dst: "[javax.swing.JSlider].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:586,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:587,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:588,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:589,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:590,1"
      Dst: "[javax.swing.JSlider].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:591,1"
      Dst: "[javax.swing.JSlider].setMajorTickSpacing(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:592,1"
      Dst: "[javax.swing.JSlider].setPaintTicks(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "javax.swing.JComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].gbc(int,int,int,double)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:597,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:598,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].gbc(int,int,int,double)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:598,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "javax.swing.JComponent[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:618"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:616,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:617,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:617,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:619,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:619,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:619,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:622,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].addRow(java.lang.String,javax.swing.JComponent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].gbc(int,int,int,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.GridBagConstraints"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:626,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:626,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$100(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JTextField"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$300(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.SpinnerNumberModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$500(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$600(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getVertexSymbol(javax.swing.JComboBox)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getVertexSymbol(javax.swing.JComboBox)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getVertexSymbol(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].getSelectedItem()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:560"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:556"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:557,1"
      Dst: "[javax.swing.JComboBox].getSelectedItem()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:560,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$900(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JPanel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.SpinnerNumberModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1100(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1300(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.SpinnerNumberModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1500(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1600(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1900(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JPanel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2000(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getPaletteType(javax.swing.JComboBox)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getPaletteType(javax.swing.JComboBox)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getPaletteType(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].getSelectedItem()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:539"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel:541"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:536,1"
      Dst: "[javax.swing.JComboBox].getSelectedItem()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:539,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2100(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.SpinnerNumberModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$17].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:381,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$17].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:383,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:384,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:385,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$17:385,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.shape.CubicBezierCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve$1:162,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve$1].map(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve$1"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].access$000(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].access$100(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve$1:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve$1:169"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve$1:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve$1:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve$1:173"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve$1:172"
        BranchSideFuncs:
        - "copy()"
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve$1:167,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].access$000(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve$1:170,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].access$100(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve$1:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].access$000(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.shape.CubicBezierCurve"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierLine(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:39,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierLine(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierLine(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:179,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:180,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:181,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:181,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:182,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:182,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 204
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].addCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    functionUses: 2
    ICount: 21
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:205,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:206,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:209,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].addCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 51
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:232"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:231"
        BranchSideFuncs:
        - "controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:218"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:218"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:216,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:217,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:219,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:227,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:226,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:232,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].signum(double)"
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 94
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:287"
        BranchSideFuncs:
        - "angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "distance(org.locationtech.jts.geom.Coordinate)"
        - "bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:286"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:287"
        BranchSideFuncs:
        - "angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "distance(org.locationtech.jts.geom.Coordinate)"
        - "bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:320"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double,double)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:317"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:320"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double,double)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:336"
        BranchSideFuncs:
        - "setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:292,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:293,1"
      Dst: "[java.lang.Math].signum(double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:294,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:298,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:300,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:302,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:311,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:321,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:334,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 26
  - functionName: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Angle:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:172,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.Angle].bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 2
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].normalize(double)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:197,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Angle:198,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Angle:199,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].normalize(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 4
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:78,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].normalize(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 251
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Angle:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:255"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:355,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.algorithm.Angle:355,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:356,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.algorithm.Angle:356,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 340
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:341,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:342,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:329,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:330,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 347
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].mirrorControlPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:349,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].mirrorControlPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].mirrorControlPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 370
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].reflectPointInLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 26
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:380,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:380,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].reflectPointInLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].reflectPointInLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 383
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 44
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:391,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].addCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 29
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:243"
        BranchSideFuncs:
        - "cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:238,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:241,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:241,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:244,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:247,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 408
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double[][]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 1
    ICount: 81
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:410,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:414,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].access$100(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.shape.CubicBezierCurve"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierPolygon(org.locationtech.jts.geom.Polygon)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:39,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierPolygon(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 1
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:201"
        BranchSideFuncs:
        - "getNumInteriorRing()"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:200"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:200"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:193,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:193,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:195,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:198,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 2
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:186,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:187,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:188,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:189,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$2].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$2:96,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$2].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.xml.sax.SAXException].<init>(java.lang.String,java.lang.Exception)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$2:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$2:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$2:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$2:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$2:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$2:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$2:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$2:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$2:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:102,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:103,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:105,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:105,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:111,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:112,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:114,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:118,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:125,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$2:126,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.xml.sax.Attributes"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:497,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:498,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:499,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:500,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:503,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:504,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:506,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:508,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:38,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].findDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxVertexDistance(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxMidpointDistance(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:47,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxVertexDistance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:48,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxMidpointDistance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:49,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxVertexDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].getMaxPointDistance()"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:58,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:60,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].getMaxPointDistance()"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:60,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter:71,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:23,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].getMaxPointDistance()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:63,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:72"
        BranchSideFuncs:
        - "initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:71"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:75"
        BranchSideFuncs:
        - "initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:69,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:72,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:74,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:35,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:37,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.PointPairDistance:49,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxMidpointDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].getMaxPointDistance()"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:65,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:67,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].getMaxPointDistance()"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:67,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter:97,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter:93,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].getMaxPointDistance()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].getDistance()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].getDistancePoints()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.buffer.validate.PointPairDistance"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxVertexDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].getMaxPointDistance()"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:58,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:60,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].getMaxPointDistance()"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:60,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder].computeMaxMidpointDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].getMaxPointDistance()"
    - "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:65,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:67,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].getMaxPointDistance()"
    - Src: "org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder:67,1"
      Dst: "[org.locationtech.jts.operation.buffer.validate.PointPairDistance].setMaximum(org.locationtech.jts.operation.buffer.validate.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:69,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].set(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:79,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:80,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].set(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:90,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].add(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:113,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:113,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    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: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:227"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].matches(int,char)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:148"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:148"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:163"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].matches(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].matches(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:179,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:180,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].matches(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].set(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:79,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:80,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].set(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:69,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:274"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].set(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:205,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:208,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:208,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    functionSourceFile: "org.locationtech.jts.geom.Dimension"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].toUpperCase(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)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Dimension:123,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].matches(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[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].charAt(int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].matches(int,char)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:530"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:532"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:534"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:532"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:530,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:535,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:535,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].matches(int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].matches(int,char)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:148"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:148"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:163"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].set(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].set(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:205,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:208,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:208,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:227"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:246"
        BranchSideFuncs:
        - "setAtLeast(int,int,int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:245"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:246"
        BranchSideFuncs:
        - "setAtLeast(int,int,int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:245"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:244,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:227"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 258
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 6
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:259,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:262,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:262,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:262,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    functionSourceFile: "org.locationtech.jts.geom.Dimension"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].toUpperCase(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)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Dimension:123,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:227"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:274"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    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: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 306
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 320
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:320"
        BranchSideFuncs:
        - "isDisjoint()"
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:321,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 306
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 2
    ICount: 41
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:344"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:337,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:345,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 14
    BBCount: 20
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCrosses(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 54
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:377"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:377"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:381"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:387"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:390"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:381,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 17
    BBCount: 29
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isWithin()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:403,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isContains()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 414
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:415,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 430
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:434"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:432,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:454,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isEquals(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:484"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:485,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isOverlaps(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 506
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:506"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:508"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:512"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:512"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:510"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:511"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:513"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:517"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:513"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:517"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:514"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:509,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:129"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].matches(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[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].charAt(int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].matches(int,char)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:530"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:532"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:534"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:532"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:530,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:531,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:535,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:535,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].matches(int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].transpose()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:576"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:575"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:570,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:576,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].create(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 4
    returnType: "org.locationtech.jts.operation.overlayng.EdgeKey"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].<init>(org.locationtech.jts.operation.overlayng.Edge)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:30,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].<init>(org.locationtech.jts.operation.overlayng.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].<init>(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].initPoints(org.locationtech.jts.operation.overlayng.Edge)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:39,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].initPoints(org.locationtech.jts.operation.overlayng.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].initPoints(org.locationtech.jts.operation.overlayng.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].direction()"
    - "[org.locationtech.jts.operation.overlayng.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.Edge].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:48"
        BranchSideFuncs:
        - "init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:43,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].direction()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:49,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:56,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:57,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].compareTo(org.locationtech.jts.operation.overlayng.EdgeKey)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.EdgeKey"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:72"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].hashCode()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].hashCode(double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:95,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].hashCode(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].hashCode(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:110,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].hashCode(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:110,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].toString()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].format(double,double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:115,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:115,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:115,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].format(double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:116,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].format(double,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].format(double,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:120,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].compareTo(org.locationtech.jts.operation.overlayng.EdgeKey)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeKey:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].compareTo(org.locationtech.jts.operation.overlayng.EdgeKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeKey].compareTo(org.locationtech.jts.operation.overlayng.EdgeKey)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeKey"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.EdgeKey"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeKey:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeKey:72"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].getLocations(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:46,1"
      Dst: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:63"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getCoordinate()"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:63"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getCoordinate()"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:60,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:64,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:64,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTree].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.tree.DefaultMutableTreeNode].<init>(java.lang.Object)"
    - "[javax.swing.tree.DefaultTreeModel].<init>(javax.swing.tree.TreeNode)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].initUI()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:68,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:43,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:44,1"
      Dst: "[javax.swing.JTree].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:45,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:70,1"
      Dst: "[javax.swing.tree.DefaultMutableTreeNode].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:70,1"
      Dst: "[javax.swing.tree.DefaultTreeModel].<init>(javax.swing.tree.TreeNode)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:70,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].initUI()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:75,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].initUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[javax.swing.JTree].setRootVisible(boolean)"
    - "[javax.swing.JTree].setShowsRootHandles(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$GeometryTreeCellRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - "[javax.swing.JTree].setCellRenderer(javax.swing.tree.TreeCellRenderer)"
    - "[javax.swing.JTree].getSelectionModel()"
    - "[javax.swing.tree.TreeSelectionModel].setSelectionMode(int)"
    - "[javax.swing.JTree].setToggleClickCount(int)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - "[javax.swing.JTree].addTreeSelectionListener(javax.swing.event.TreeSelectionListener)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:80,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:81,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:82,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:83,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:84,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:85,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:87,1"
      Dst: "[javax.swing.JTree].setRootVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:88,1"
      Dst: "[javax.swing.JTree].setShowsRootHandles(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$GeometryTreeCellRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:89,1"
      Dst: "[javax.swing.JTree].setCellRenderer(javax.swing.tree.TreeCellRenderer)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:90,1"
      Dst: "[javax.swing.JTree].getSelectionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:90,1"
      Dst: "[javax.swing.tree.TreeSelectionModel].setSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:93,1"
      Dst: "[javax.swing.JTree].setToggleClickCount(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:96,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:110,1"
      Dst: "[javax.swing.JTree].addTreeSelectionListener(javax.swing.event.TreeSelectionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].moveToNextNode(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].signum(float)"
    - "[javax.swing.JTree].getSelectionPath()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].nextPath(javax.swing.tree.TreePath,int)"
    - "[javax.swing.JTree].scrollPathToVisible(javax.swing.tree.TreePath)"
    - "[javax.swing.JTree].setSelectionPath(javax.swing.tree.TreePath)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:127,1"
      Dst: "[java.lang.Math].signum(float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:128,1"
      Dst: "[javax.swing.JTree].getSelectionPath()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].nextPath(javax.swing.tree.TreePath,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:133,1"
      Dst: "[javax.swing.JTree].scrollPathToVisible(javax.swing.tree.TreePath)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:136,1"
      Dst: "[javax.swing.JTree].setSelectionPath(javax.swing.tree.TreePath)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].nextPath(javax.swing.tree.TreePath,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.tree.TreePath"
    argCount: 2
    argTypes:
    - "javax.swing.tree.TreePath"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.tree.TreePath].getLastPathComponent()"
    - "[javax.swing.tree.TreePath].getParentPath()"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getIndexOfChild(org.locationtech.jtstest.testbuilder.GeometricObjectNode)"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildCount()"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildAt(int)"
    - "[javax.swing.tree.TreePath].pathByAddingChild(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:140,1"
      Dst: "[javax.swing.tree.TreePath].getLastPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:141,1"
      Dst: "[javax.swing.tree.TreePath].getParentPath()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getIndexOfChild(org.locationtech.jtstest.testbuilder.GeometricObjectNode)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildCount()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getChildAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:152,1"
      Dst: "[javax.swing.tree.TreePath].pathByAddingChild(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getGeometry()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:163,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:163,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreeModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Vector].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryContext].<init>(int,java.util.Comparator)"
    - "[org.locationtech.jtstest.testbuilder.GeometryNode].create(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:45,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryContext].<init>(int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryNode].create(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].<init>(int,java.util.Comparator)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryContext:214,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:167,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreeModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Vector].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryContext].<init>(int,java.util.Comparator)"
    - "[org.locationtech.jtstest.testbuilder.GeometryNode].create(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:45,1"
      Dst: "[java.util.Vector].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryContext].<init>(int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreeModel:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryNode].create(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].treeWillExpand(javax.swing.event.TreeExpansionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.TreeExpansionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.event.TreeExpansionEvent].getPath()"
    - "[javax.swing.tree.TreePath].getLastPathComponent()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:173,1"
      Dst: "[javax.swing.event.TreeExpansionEvent].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:174,1"
      Dst: "[javax.swing.tree.TreePath].getLastPathComponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].treeWillCollapse(javax.swing.event.TreeExpansionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.TreeExpansionEvent"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingPointIndex"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:42,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingPointIndex"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:58,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:59,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 7
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:147,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 6
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:171"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:180"
        BranchSideFuncs:
        - "findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:163,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:172,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:175,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:180,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:53,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 5
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].queryEnvelope()"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].getNode()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:196,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:197,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].queryEnvelope()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:197,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:198,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].getNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].<init>(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor:208,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].queryEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor:214,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor:215,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:155,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:199"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 307
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.kdtree.KdNodeVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdTree$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].push(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    - "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 3
    ICount: 49
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:328"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
        - "isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:325"
        BranchSideFuncs:
        - "getLeft()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:350"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:339"
        BranchSideFuncs:
        - "visit(org.locationtech.jts.index.kdtree.KdNode)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:338"
        BranchSideFuncs:
        - "isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:347"
        BranchSideFuncs:
        - "getRight()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:308,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:317,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:319,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:328,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:330,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:331,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:332,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:341,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame:360,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:176"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:175"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:177"
        BranchSideFuncs:
        - "splitValue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:174,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:176,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:178,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:92"
        BranchSideFuncs:
        - "getX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:91"
        BranchSideFuncs:
        - "getY()"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:92,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame"
    linkageType: null
    functionLinenumber: 365
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame"
    linkageType: null
    functionLinenumber: 369
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:196"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:195"
        BranchSideFuncs:
        - "getMaxY()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:197"
        BranchSideFuncs:
        - "splitValue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:194,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:196,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:198,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].getNode()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor"
    linkageType: null
    functionLinenumber: 219
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 251
    functionDepth: 3
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].setLeft(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].setRight(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 1
    ICount: 60
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:290"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:289"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:261"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:271"
        BranchSideFuncs:
        - "increment()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:270"
        BranchSideFuncs:
        - "splitValue(boolean)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:282"
        BranchSideFuncs:
        - "getRight()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:286"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:285"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:295"
        BranchSideFuncs:
        - "setLeft(org.locationtech.jts.index.kdtree.KdNode)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:294"
        BranchSideFuncs:
        - "setRight(org.locationtech.jts.index.kdtree.KdNode)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:262,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:262,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:267,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:271,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:280,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:283,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:291,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:293,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].setLeft(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:295,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].setRight(org.locationtech.jts.index.kdtree.KdNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 27
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].setLeft(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].setRight(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingPointIndex].getTolerance()"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingPointIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingPointIndex].depth()"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingPointIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].depth()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:77,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].depth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].depth()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:436,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:442"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:443,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:443,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:444,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    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: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:68,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:69,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:70,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:147,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:82,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:83,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:84,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:136,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:137,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].extract(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:156,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].extract(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].extract(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.union.InputExtracter"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - "[org.locationtech.jts.operation.union.InputExtracter].add(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:48,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:49,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].add(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    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: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:66,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:127,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:127,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:127,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:128,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:95,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:96,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:97,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:123,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:125,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].extract(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:156,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].extract(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:279,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:280,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapping(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:192"
        BranchSideFuncs:
        - "overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:194"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:182,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:186,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapping(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:193,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 293
    functionDepth: 3
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:294,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:296,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 300
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].ordinateMagnitude(org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:301,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].ordinateMagnitude(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].ordinateMagnitude(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:312"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:314"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:314,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:316,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:316,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:316,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:315,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:318,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:318,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapping(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:214,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 272
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.noding.Noder)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:273,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:274,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:64,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:249,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:251,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 450
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapSelf(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:236,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapSelf(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:240,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapSelf(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 2
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:260,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:261,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:262,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:268,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:269,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:387,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:345,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:346,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:347,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].maxBoundMagnitude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PrecisionUtil:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil:112"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "maxBoundMagnitude(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil:111"
        BranchSideFuncs:
        - "safeScale(double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:107,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].maxBoundMagnitude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:110,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:112,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].maxBoundMagnitude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[java.lang.Math].abs(double)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:127,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:127,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:128,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:129,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:130,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:126,1"
      Dst: "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:140"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].precisionScale(double,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:79,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].precisionScale(double,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].precisionScale(double,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:157,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:160,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:212,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapping(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:192"
        BranchSideFuncs:
        - "overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:194"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:182,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:186,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapping(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:193,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapping(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:214,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapSelf(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:236,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapSelf(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:240,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapSelf(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 2
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:260,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:261,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:262,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:268,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:269,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTol(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 272
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.noding.Noder)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:273,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:274,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 293
    functionDepth: 3
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:294,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:296,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].snapTolerance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 300
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].ordinateMagnitude(org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:301,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].ordinateMagnitude(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].ordinateMagnitude(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:312"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:314"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313"
        BranchSideFuncs:
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:313,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:314,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:316,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:316,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:316,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:315,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:318,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:318,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:345,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].safeScale(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:346,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:347,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:56,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:68,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].getMonotoneChains()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].getIndex()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "org.locationtech.jts.index.SpatialIndex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 9
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:78,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getId()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector:org.locationtech.jts.noding.InteriorIntersectionFinderAdder:org.locationtech.jts.noding.IntersectionAdder:org.locationtech.jts.noding.IntersectionFinderAdder:org.locationtech.jts.noding.NodingIntersectionFinder:org.locationtech.jts.noding.SegmentIntersectionDetector:org.locationtech.jts.noding.snap.SnappingIntersectionAdder:org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    functionUses: 1
    ICount: 34
    EdgeCount: 65
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:114"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:113"
        BranchSideFuncs:
        - "getId()"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:110"
        BranchSideFuncs:
        - "computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:109"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:93,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:95,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:95,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:96,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:97,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:98,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:105,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getId()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:106,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:110,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].setId(int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 21
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:126"
        BranchSideFuncs:
        - "setId(int)"
        - "add(java.lang.Object)"
        - "insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
        - "next()"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:118,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:118,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:119,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:119,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:121,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].setId(int)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:123,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:123,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.JDOMConstants].<init>()"
    functionSourceFile: "org.jdom2.JDOMConstants"
    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: "org.jdom2.JDOMConstants:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:75,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:91,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:92,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:157,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:159,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:171,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:181,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.PriorityQueue].<init>()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.AbstractQueue].remove()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 99
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:310"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:253,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:260,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:261,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:262,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:272,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:275,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:282,1"
      Dst: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:287,1"
      Dst: "[java.util.AbstractQueue].remove()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:304,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:315,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:318,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:241,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:244,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:246,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:247,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:248,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:115,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:35,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:36,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:38,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:372"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:373"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:367,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:367,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:367,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:374,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:375,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:375,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(double,double)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:379,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:379,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:233,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:234,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:235,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].distance(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:225,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:228,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].distance(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 13
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:82"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
        - "getLocation()"
        - "<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:83,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:85,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:86,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:106"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:102,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].init(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:134"
        BranchSideFuncs:
        - "init(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:131,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:128,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].<init>()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:136,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].init(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].init(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].addLine(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:152"
        BranchSideFuncs:
        - "next()"
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:148"
        BranchSideFuncs:
        - "addLine(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:142,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:143,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:144,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:146,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:149,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:150,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].addLine(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:131,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:132,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:178,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].addLine(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].insert(double,double,java.lang.Object)"
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:157,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:158,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:159,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:160,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].insert(double,double,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].insert(double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].<init>(double,double,java.lang.Object)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:65"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(double,double,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:65,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:66,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].<init>(double,double,java.lang.Object)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:66,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].<init>(double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode:22,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.RayCrossingCounter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor:114,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 175
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:177"
        BranchSideFuncs:
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:178,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:154"
        BranchSideFuncs:
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:149,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:155,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildRoot()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:77"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:79"
        BranchSideFuncs:
        - "buildRoot()"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:78,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:80,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildRoot()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildRoot()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildTree()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:86"
        BranchSideFuncs:
        - "buildTree()"
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:85"
        BranchSideFuncs:
        - "buildTree()"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:86,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildTree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildTree()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode$NodeComparator].<init>()"
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildLevel(java.util.List,java.util.List)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:105"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:93,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode$NodeComparator].<init>()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:93,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:98,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:101,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildLevel(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:102,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:103,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode$NodeComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode$NodeComparator"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode$NodeComparator:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildLevel(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].clear()"
    - "[org.jdom2.ContentList].clear()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].<init>(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    - "[java.util.List].clear()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:132"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:123"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "get(int)"
        - "<init>(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:116,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:117,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:118,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:122,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:126,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].<init>(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].<init>(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode"
    linkageType: null
    functionLinenumber: 22
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode"
    - "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].<init>()"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].buildExtent(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode:23,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].<init>()"
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode:26,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].buildExtent(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].buildExtent(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode"
    - "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode:31,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode:32,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:216"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:128,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:129,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:133,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.STRtree"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:348"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:348,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:349,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:349,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:350,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:48,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:394"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:401"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:400"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:359,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:360,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:362,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:364,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:365,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:384,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:395,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequence].isPoint()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].computeDistancePointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.operation.distance.FacetSequence].computeDistanceLineLine(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:114,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].isPoint()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:121,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:125,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistancePointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:132,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistanceLineLine(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].isPoint()"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:101"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistancePointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].updateNearestLocationsPointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:211,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:213,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:216,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].updateNearestLocationsPointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].updateNearestLocationsPointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:226,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:226,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:227,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:228,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistanceLineLine(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].updateNearestLocationsLineLine(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:193"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:180,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:186,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:189,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].updateNearestLocationsLineLine(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 2
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.MathUtil].min(double,double,double,double)"
    functionUses: 1
    ICount: 89
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:45"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.algorithm.Distance:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:75"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Distance:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:44,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.Distance:45,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:99,1"
      Dst: "[org.locationtech.jts.math.MathUtil].min(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 5
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:76,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.geom.Envelope:77,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.math.MathUtil].min(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:149"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].updateNearestLocationsLineLine(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.distance.FacetSequence"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:199,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:201,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:202,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:202,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 552
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 50
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:578"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:587"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:586"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:589"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:594"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:553,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.geom.LineSegment:566,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:567,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 613
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:616"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:618"
        BranchSideFuncs:
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:617"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:614,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:615,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:616,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.geom.LineSegment:617,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].distance(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:53,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:55,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:58,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:42,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:43,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:62,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:62,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 9
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].init()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 8
    ICount: 17
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:62"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "locate(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:54,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].init()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:56,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:56,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:58,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].init()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:43"
        BranchSideFuncs:
        - "getPolygonals(org.locationtech.jts.geom.Geometry)"
        - "<init>()"
        - "size()"
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:44,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:45,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:46,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:47,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:48,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:48,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonalExtracter"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:56,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:56,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonalExtracter"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry:org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:37"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:36"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:39"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:45"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:37,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:41,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:41,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:155,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:232,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:407,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - "[org.locationtech.jts.geom.Point].getX()"
    - "[org.locationtech.jts.geom.Point].getY()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:384,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.geom.Point].getX()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.geom.Point].getY()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:99,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.Point:100,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Point:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:106,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.Point:107,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "long"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[java.lang.Math].log(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle:106,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle:106,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle:109,1"
      Dst: "[java.lang.Math].log(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:301,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.geom.Envelope:306,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isFullyOutside()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isOutside()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:354"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:336,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isFullyOutside()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isOutside()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:346,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:355,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isFullyOutside()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:423,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isOutside()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:426"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:74,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:75,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:76,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:77,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:79,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestLocations(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].toPoints(org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:161,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestLocations(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:162,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].toPoints(org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestLocations(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.operation.distance.GeometryLocation[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].nearestLocations(org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:145,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:146,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:150,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].nearestLocations(org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].nearestLocations(org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.operation.distance.GeometryLocation[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequence].isPoint()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].computeDistancePointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.operation.distance.FacetSequence].computeDistanceLineLine(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:146,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].isPoint()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:151,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:153,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:158,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistancePointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:169,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistanceLineLine(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].toPoints(org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.IndexedFacetDistance:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.IndexedFacetDistance:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.IndexedFacetDistance:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:170,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:91,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:92,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:107,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:123,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:124,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:157,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:159,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:171,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:206,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:208,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.PriorityQueue].<init>()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.AbstractQueue].remove()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 99
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:310"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:253,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:260,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:261,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:262,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:272,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:275,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:282,1"
      Dst: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:287,1"
      Dst: "[java.util.AbstractQueue].remove()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:304,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:315,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:318,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:123,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:124,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:157,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:159,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:165,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:171,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getCenter()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:181,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusPoint()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:196,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.PriorityQueue].<init>()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.AbstractQueue].remove()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 99
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:310"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:253,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:260,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:261,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:262,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:272,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:275,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:282,1"
      Dst: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:287,1"
      Dst: "[java.util.AbstractQueue].remove()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:304,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:315,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:318,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].getRadiusLine()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:206,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:208,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].distance(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:223,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:225,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:228,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].distance(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:233,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:234,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:235,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:240,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:241,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:244,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:246,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:247,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:248,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].compute()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.PriorityQueue].<init>()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.AbstractQueue].remove()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    functionUses: 0
    ICount: 99
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:310"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:253,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].initBoundary()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:260,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:261,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:262,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:269,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:272,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:275,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:282,1"
      Dst: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle].computeMaximumIterations(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:284,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:287,1"
      Dst: "[java.util.AbstractQueue].remove()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:291,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:302,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:304,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:305,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:315,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:318,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].mayContainCircleCenter(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isFullyOutside()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isOutside()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:354"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:336,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isFullyOutside()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:345,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isOutside()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:346,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:355,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createInitialGrid(org.locationtech.jts.geom.Envelope,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:372"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:373"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:367,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:367,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:367,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:374,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:375,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:375,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCell(double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(double,double)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:379,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(double,double)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:379,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].createCentroidCell(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - "[org.locationtech.jts.geom.Point].getX()"
    - "[org.locationtech.jts.geom.Point].getY()"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:384,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.geom.Point].getX()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.geom.Point].getY()"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle].distanceToConstraints(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle:385,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:46,1"
      Dst: "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List)"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:54"
        BranchSideFuncs:
        - "addEdges(java.util.List,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:53"
        BranchSideFuncs:
        - "addEdges(java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:52,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:54,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:55,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:79"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:76,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:77,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getMonotoneChainEdge()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getStartIndexes()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChain].<init>(org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMinX(int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMaxX(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:83,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getMonotoneChainEdge()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:84,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getStartIndexes()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:86,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChain].<init>(org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:87,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMinX(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:87,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:89,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMaxX(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:89,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getMonotoneChainEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:106,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].<init>(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].<init>()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].getChainStartIndices(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:46,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:47,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:48,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].getChainStartIndices(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].getChainStartIndices(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 2
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    - "[org.locationtech.jts.util.IntArrayList].add(int)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:69"
        BranchSideFuncs:
        - "add(int)"
        - "findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:65,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:68,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].add(int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:70,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:75,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].add(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:70,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:100,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    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()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:96,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getStartIndexes()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 51
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChain].<init>(org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChain"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChain:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMinX(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:55"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineEvent:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMaxX(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:61"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineEvent:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:72"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:67,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:67,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:68,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:70,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122"
        BranchSideFuncs:
        - "getDeleteEventIndex()"
        - "processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:121"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:112"
        BranchSideFuncs:
        - "prepareEvents()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:114,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:116,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:118,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:119,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:100"
        BranchSideFuncs:
        - "getInsertEvent()"
        - "setDeleteEventIndex(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:99"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:100,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:102,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:104,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:105,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:106,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:106,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:58"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 61
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:57"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 60
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 10
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChain].computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:147"
        BranchSideFuncs:
        - "isInsert()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:130"
        BranchSideFuncs:
        - "isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
        - "getObject()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:130"
        BranchSideFuncs:
        - "computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:130,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:137,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:138,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:141,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:142,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChain].computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChain].computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChain"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.MonotoneChain"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChain:29,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge:83,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 74
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:60,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:62,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:79"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:76,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:77,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122"
        BranchSideFuncs:
        - "getDeleteEventIndex()"
        - "processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:121"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:112"
        BranchSideFuncs:
        - "prepareEvents()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:114,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:116,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:118,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:119,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:72"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:67,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:67,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:68,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:70,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdges(java.util.List,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:79"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:75,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:76,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:77,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].addEdge(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getMonotoneChainEdge()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getStartIndexes()"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChain].<init>(org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMinX(int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMaxX(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:83,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getMonotoneChainEdge()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:84,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getStartIndexes()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:86,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChain].<init>(org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:87,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMinX(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:87,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:89,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].getMaxX(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:89,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:100"
        BranchSideFuncs:
        - "getInsertEvent()"
        - "setDeleteEventIndex(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:99"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:100,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:102,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:104,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:105,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:106,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:106,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122"
        BranchSideFuncs:
        - "getDeleteEventIndex()"
        - "processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:121"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:112"
        BranchSideFuncs:
        - "prepareEvents()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:114,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].prepareEvents()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:116,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:118,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:119,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:122,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 10
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChain].computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:147"
        BranchSideFuncs:
        - "isInsert()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:130"
        BranchSideFuncs:
        - "isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
        - "getObject()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:130"
        BranchSideFuncs:
        - "computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:130,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:137,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:138,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:141,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector:142,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChain].computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.tri.TriEdge].normalize()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:34,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriEdge].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriEdge].normalize()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.TriEdge:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:38,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.TriEdge].hashCode()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:48,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:475,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriEdge].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriEdge"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.TriEdge:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:58"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.triangulate.tri.TriEdge:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.TriEdge:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriEdge:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:60,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.TriEdge].toString()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriEdge:66,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:108,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:118,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:140,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:256,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$7].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$500(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$500(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:259,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:260,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$7:260,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$500(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$4].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedGeometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$4:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$4].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$4:59,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$26].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:492,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$26].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2100(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:494"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:495"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:494"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:494,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:495,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:495,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2100(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:495,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:495,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:496,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$26:496,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2100(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].editPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:143,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:146,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:151,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:155,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:162,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].editPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:168,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:171,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:172,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:177,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:177,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:178,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:183,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:184,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:185,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:189,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:193,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:200,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:204,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:205,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:206,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:206,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:207,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:210,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:213,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:214,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:214,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:218,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:225,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].<init>(double,org.locationtech.jts.noding.snap.SnappingPointIndex)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.noding.snap.SnappingPointIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:31,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].isAdjacent(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processNearVertex(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 4
    ICount: 37
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:65"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "isAdjacent(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:65"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "isAdjacent(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:96"
        BranchSideFuncs:
        - "getIntersectionNum()"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:95"
        BranchSideFuncs:
        - "processNearVertex(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:95"
        BranchSideFuncs:
        - "processNearVertex(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:95"
        BranchSideFuncs:
        - "processNearVertex(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:66,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:75,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].isAdjacent(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:76,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:83,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:83,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:85,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:86,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:88,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:96,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processNearVertex(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].isAdjacent(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.NodedSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:152"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:160"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:150,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingPointIndex"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:58,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:59,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:186,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processNearVertex(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 4
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:130"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:129"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:131"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:129,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:132,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:135,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processNearVertex(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 4
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:130"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:129"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:131"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:129,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:132,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:135,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].isAdjacent(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.NodedSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:152"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:160"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:150,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:153,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].isDone()"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12:137,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageToClipboard()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$12:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageToClipboard()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageToClipboard()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].saveImageToClipboard(java.awt.Component,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:233,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:233,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].saveImageToClipboard(java.awt.Component,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:237,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].saveImageToClipboard(java.awt.Component,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ImageUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].getSize()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - "[java.awt.Image].getGraphics()"
    - "[java.awt.Component].paint(java.awt.Graphics)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.OutputStream)"
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[org.locationtech.jtstest.testbuilder.ui.ClipImage].<init>(byte[])"
    - "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:34,1"
      Dst: "[java.awt.Component].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:35,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:37,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:37,1"
      Dst: "[java.awt.Component].paint(java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:38,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:39,1"
      Dst: "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.OutputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:41,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:41,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:42,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].<init>(byte[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:43,1"
      Dst: "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].<init>(byte[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ClipImage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:129,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1].mouseClicked(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getClickCount()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - "[org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].fireFunctionInvoked(org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:131,1"
      Dst: "[java.awt.event.MouseEvent].getClickCount()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel$1:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].fireFunctionInvoked(org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunctionFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:149,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunctionFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunctionFromNode(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.tree.DefaultMutableTreeNode].getUserObject()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:59,1"
      Dst: "[javax.swing.tree.DefaultMutableTreeNode].getUserObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent:23,1"
      Dst: "[java.util.EventObject].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].fireFunctionInvoked(org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener].functionInvoked(org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:208,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:210,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener].functionInvoked(org.locationtech.jtstest.testbuilder.event.GeometryFunctionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.Corner].<init>(org.locationtech.jts.simplify.LinkedLine,int)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.LinkedLine"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - "[org.locationtech.jts.coverage.Corner].area(org.locationtech.jts.simplify.LinkedLine,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.Corner:31,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - Src: "org.locationtech.jts.coverage.Corner:32,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - Src: "org.locationtech.jts.coverage.Corner:33,1"
      Dst: "[org.locationtech.jts.coverage.Corner].area(org.locationtech.jts.simplify.LinkedLine,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].isVertex(int)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:36"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:36"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:36"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.Corner].getIndex()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:47,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].getArea()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].prev()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:55,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].next()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:59,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].area(org.locationtech.jts.simplify.LinkedLine,int)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.LinkedLine"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].prevCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].nextCoordinate(int)"
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:63,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prevCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:64,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:65,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].nextCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:66,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].prevCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:83,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].nextCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:87,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:396,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].compareTo(org.locationtech.jts.coverage.Corner)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    - "[java.lang.Integer].compare(int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:76,1"
      Dst: "[java.lang.Double].compare(double,double)"
    - Src: "org.locationtech.jts.coverage.Corner:80,1"
      Dst: "[java.lang.Integer].compare(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.Corner].envelope()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:84,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:87,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.Corner:88,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].isVertex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:93,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:93,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.Corner].isBaseline(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].prev()"
    - "[org.locationtech.jts.coverage.Corner].next()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:100,1"
      Dst: "[org.locationtech.jts.coverage.Corner].prev()"
    - Src: "org.locationtech.jts.coverage.Corner:101,1"
      Dst: "[org.locationtech.jts.coverage.Corner].next()"
    - Src: "org.locationtech.jts.coverage.Corner:102,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.Corner].prev()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:55,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].next()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:59,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.Corner].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:108,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:111,1"
      Dst: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:76,1"
      Dst: "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:78,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.coverage.Corner].isRemoved()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:115,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - Src: "org.locationtech.jts.coverage.Corner:115,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].toLineString()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.coverage.Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:119,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:122,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.coverage.Corner:123,1"
      Dst: "[org.locationtech.jts.coverage.Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.Corner:122,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:131,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.Corner].toString()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].toLineString()"
    - "[org.locationtech.jts.geom.Geometry].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:127,1"
      Dst: "[org.locationtech.jts.coverage.Corner].toLineString()"
    - Src: "org.locationtech.jts.coverage.Corner:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].toLineString()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.coverage.Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:119,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:122,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.coverage.Corner:123,1"
      Dst: "[org.locationtech.jts.coverage.Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.Corner:122,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:131,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.Corner].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].compareTo(org.locationtech.jts.coverage.Corner)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:21,1"
      Dst: "[org.locationtech.jts.coverage.Corner].compareTo(org.locationtech.jts.coverage.Corner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].compareTo(org.locationtech.jts.coverage.Corner)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    - "[java.lang.Integer].compare(int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:76,1"
      Dst: "[java.lang.Double].compare(double,double)"
    - Src: "org.locationtech.jts.coverage.Corner:80,1"
      Dst: "[java.lang.Integer].compare(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Attribute"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Attribute].getQualifiedName()"
    - "[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: 17
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Attribute].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Element,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Element"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:102,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:102,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.ProcessingInstruction,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.ProcessingInstruction"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].getTarget()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:141,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:141,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:141,1"
      Dst: "[org.jdom2.ProcessingInstruction].getTarget()"
    - Src: "org.jdom2.IllegalAddException:141,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:141,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException: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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.ProcessingInstruction,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].getTarget()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:161,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:161,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:161,1"
      Dst: "[org.jdom2.ProcessingInstruction].getTarget()"
    - Src: "org.jdom2.IllegalAddException:161,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:161,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Comment,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Comment"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Comment].getText()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:180,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:180,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:180,1"
      Dst: "[org.jdom2.Comment].getText()"
    - Src: "org.jdom2.IllegalAddException:180,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:180,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:180,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.CDATA,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.CDATA"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Text].getText()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:201,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:201,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:201,1"
      Dst: "[org.jdom2.Text].getText()"
    - Src: "org.jdom2.IllegalAddException:201,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:201,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:201,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Text,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Text"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Text].getText()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:223,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:223,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:223,1"
      Dst: "[org.jdom2.Text].getText()"
    - Src: "org.jdom2.IllegalAddException:223,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:223,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:223,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Comment,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Comment"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Comment].getText()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:242,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:242,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:242,1"
      Dst: "[org.jdom2.Comment].getText()"
    - Src: "org.jdom2.IllegalAddException:242,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:242,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.EntityRef,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.EntityRef"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.EntityRef].getName()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:261,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:261,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:261,1"
      Dst: "[org.jdom2.EntityRef].getName()"
    - Src: "org.jdom2.IllegalAddException:261,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:261,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:261,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Namespace"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.Namespace].getURI()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.IllegalAddException:282"
      Branch Sides:
      - BranchSide: "org.jdom2.IllegalAddException:282"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.IllegalAddException:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.DocType,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DocType"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.DocType].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[org.jdom2.DocType].toString()"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:319,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.String[])"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:591,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].setB(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].isBinaryGeom()"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:601,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getNumInvocations()"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:610"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:609"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getValue(int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:614"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:617"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:616"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getArgs(int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].createFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:620"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:620"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:619"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:621,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].createFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].createFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:629"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:633"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:634"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:637"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:636"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:625,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:629,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:635,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Double"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:141,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:144,1"
      Dst: "[java.lang.Double].valueOf(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:132,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:135,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].createFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:629"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:633"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:634"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:637"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:636"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:625,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:629,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:635,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].<init>()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:195,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.input.sax.TextBuffer].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    - "[org.jdom2.input.sax.SAXHandler].reset()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:207"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:206,1"
      Dst: "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:129,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:133,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:136,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:139,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:207,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:208,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.sax.SAXHandler].resetSubCLass()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].reset()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - "[java.util.List].clear()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    - "[java.util.Map].clear()"
    - "[org.jdom2.input.sax.SAXHandler].resetSubCLass()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:228,1"
      Dst: "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - Src: "org.jdom2.input.sax.SAXHandler:238,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.jdom2.input.sax.SAXHandler:239,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:240,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    - Src: "org.jdom2.input.sax.SAXHandler:241,1"
      Dst: "[java.util.Map].clear()"
    - Src: "org.jdom2.input.sax.SAXHandler:244,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].resetSubCLass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.TextBuffer].clear()"
    functionSourceFile: "org.jdom2.input.sax.TextBuffer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].resetSubCLass()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].pushElement(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:256"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:257,1"
      Dst: "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - Src: "org.jdom2.input.sax.SAXHandler:261,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].indexOfFirstElement()"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:241"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:236,1"
      Dst: "[org.jdom2.ContentList].indexOfFirstElement()"
    - Src: "org.jdom2.Document:238,1"
      Dst: "[java.util.AbstractList].add(java.lang.Object)"
    - Src: "org.jdom2.Document:241,1"
      Dst: "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.ContentList].indexOfFirstElement()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 462
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:463"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:464"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:465"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:464"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:463"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 4
    returnType: "org.jdom2.Content"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Element].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Document].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    - "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    - "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    - "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ContentList].incDataModOnly()"
    - "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    functionUses: 2
    ICount: 15
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:527,1"
      Dst: "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:530,1"
      Dst: "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:539,1"
      Dst: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - Src: "org.jdom2.ContentList:540,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - Src: "org.jdom2.ContentList:544,1"
      Dst: "[org.jdom2.ContentList].incDataModOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Content"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - "[org.jdom2.Text].getParent()"
    - "[org.jdom2.DocType].getParent()"
    - "[org.jdom2.EntityRef].getParent()"
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,java.lang.String)"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Element].isAncestor(org.jdom2.Element)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 48
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:198"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:202"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:201"
        BranchSideFuncs:
        - "checkIndex(int,boolean)"
    - Branch String: "org.jdom2.ContentList:204"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:215"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:207"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:211"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,java.lang.String)"
      - BranchSide: "org.jdom2.ContentList:210"
        BranchSideFuncs:
        - "getQualifiedName()"
    - Branch String: "org.jdom2.ContentList:216"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:222"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:221"
        BranchSideFuncs:
        - "isAncestor(org.jdom2.Element)"
    - Branch String: "org.jdom2.ContentList:222"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:227"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:222"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:227"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:222"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:199,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList:202,1"
      Dst: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - Src: "org.jdom2.ContentList:204,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.ContentList:208,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,java.lang.String)"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList:222,1"
      Dst: "[org.jdom2.Element].isAncestor(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    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.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:187"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:186"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:190"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:194"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:121,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getQualifiedName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Element].getName()"
    - "[java.lang.String].equals(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()"
    functionUses: 6
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Element:360"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:364"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "org.jdom2.Element:363"
        BranchSideFuncs:
        - "getPrefix()"
    Callsites:
    - Src: "org.jdom2.Element:360,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:360,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Element:361,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:319,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].isAncestor(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1046
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.Document].getParent()"
    - "[org.jdom2.Parent].getParent()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1048"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1054"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1053"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1049"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1052"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1051"
        BranchSideFuncs:
        - "getParent()"
    Callsites:
    - Src: "org.jdom2.Element:1047,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.Element:1052,1"
      Dst: "[org.jdom2.Parent].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 510
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    - "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    - "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    - "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 3
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:511,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].incDataModOnly()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 174
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].getDocument()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Document"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].getFactory()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].setExpandEntities(boolean)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].getExpandEntities()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].setIgnoringElementContentWhitespace(boolean)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].setIgnoringBoundaryWhitespace(boolean)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].getIgnoringBoundaryWhitespace()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].getIgnoringElementContentWhitespace()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].startDocument()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Locator].getSystemId()"
    - "[org.jdom2.Document].setBaseURI(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:366"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:369"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:368"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:367,1"
      Dst: "[org.xml.sax.Locator].getSystemId()"
    - Src: "org.jdom2.input.sax.SAXHandler:367,1"
      Dst: "[org.jdom2.Document].setBaseURI(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.Document].setBaseURI(java.lang.String)"
    functionSourceFile: "org.jdom2.Document"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].externalEntityDecl(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:389"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:392"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:387,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:392,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:393,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1112"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1115"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1114"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1115"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1123"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1122"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1116"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1119"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.jdom2.input.sax.SAXHandler].attributeDecl(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:415"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:418"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:417"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:420"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:423"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:422"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:425"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:428"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:427"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:425"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:428"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:427"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:418,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:418,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.input.sax.SAXHandler:425,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.jdom2.input.sax.SAXHandler].elementDecl(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:442"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:445"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:444"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:445,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:445,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].internalEntityDecl(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:461"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:464"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:463"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:465"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:468"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:467"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:464,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:465,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:466,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.sax.SAXHandler].processingInstruction(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:490"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:493"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:492"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:495"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:492"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:500"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:503"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:502"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:493,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:495,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:495,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:495,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:495,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:501,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - Src: "org.jdom2.input.sax.SAXHandler:503,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    functionSourceFile: "org.jdom2.input.sax.TextBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.TextBuffer:124"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.TextBuffer:129"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.TextBuffer:128"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.TextBuffer:125"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.TextBuffer:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.TextBuffer:125,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1262"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.jdom2.input.sax.TextBuffer].toString()"
    functionSourceFile: "org.jdom2.input.sax.TextBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(char[],int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.TextBuffer:135"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.TextBuffer:138"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.TextBuffer:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.TextBuffer:138,1"
      Dst: "[java.lang.String].valueOf(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.JDOMFactory].cdata(int,int,java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(int,int,java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:822"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:834"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:833"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:822"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:834"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:833"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:834"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:839"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:838"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:835"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:834"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:839"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:838"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:822,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.input.sax.SAXHandler:835,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:835,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(int,int,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:837,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - Src: "org.jdom2.input.sax.SAXHandler:837,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - Src: "org.jdom2.input.sax.SAXHandler:839,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:839,1"
      Dst: "[org.jdom2.JDOMFactory].text(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1133"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1137"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1134,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.TextBuffer].clear()"
    functionSourceFile: "org.jdom2.input.sax.TextBuffer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].skippedEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].entityRef(int,int,java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:520"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:523"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:522"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:525"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:522"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:520,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:523,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:525,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:525,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:525,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:525,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(int,int,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:529,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - Src: "org.jdom2.input.sax.SAXHandler:529,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1133"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1137"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1134,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].startPrefixMapping(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:545"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:548"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:547"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:548,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:549,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.input.sax.SAXHandler].startElement(java.lang.String,java.lang.String,java.lang.String,org.xml.sax.Attributes)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "org.xml.sax.Attributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    - "[java.util.List].size()"
    - "[org.jdom2.input.sax.SAXHandler].transferNamespaces(org.jdom2.Element)"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.JDOMFactory].setRoot(org.jdom2.Document,org.jdom2.Element)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - "[org.xml.sax.Attributes].getLength()"
    - "[org.xml.sax.Attributes].getLocalName(int)"
    - "[org.xml.sax.Attributes].getQName(int)"
    - "[org.xml.sax.ext.Attributes2].isSpecified(int)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[org.xml.sax.Attributes].getType(int)"
    - "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(int)"
    - "[org.xml.sax.Attributes].getURI(int)"
    - "[java.util.HashMap].<init>()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.lang.String].length()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - "[org.jdom2.Attribute].setSpecified(boolean)"
    - "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    functionUses: 0
    ICount: 146
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:575"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:578"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:577"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:581"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:596"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:595"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:584"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:589"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:588"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:589"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:590"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:589"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:589"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:596"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:595"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:598"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:596"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:595"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:605"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:609"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:608"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:611"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:616"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:615"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:621"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:723"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:626"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:623"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:622"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:630"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:650"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:635"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:618"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:617"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:635"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:639"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:638"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:641"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:646"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:645"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:646"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:651"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:650"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:656"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:617"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:656"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:617"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:656"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:668"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:669"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:712"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:669"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:712"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:682"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:691"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:690"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:683"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:687"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:683"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:687"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:691"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:712"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:706"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:710"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:709"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:717"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:720"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:581,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:582,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:585,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.jdom2.input.sax.SAXHandler:590,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:596,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:598,1"
      Dst: "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.sax.SAXHandler:598,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:598,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:598,1"
      Dst: "[org.jdom2.JDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.sax.SAXHandler:605,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.input.sax.SAXHandler:606,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].transferNamespaces(org.jdom2.Element)"
    - Src: "org.jdom2.input.sax.SAXHandler:609,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:612,1"
      Dst: "[org.jdom2.JDOMFactory].setRoot(org.jdom2.Document,org.jdom2.Element)"
    - Src: "org.jdom2.input.sax.SAXHandler:616,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - Src: "org.jdom2.input.sax.SAXHandler:616,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - Src: "org.jdom2.input.sax.SAXHandler:621,1"
      Dst: "[org.xml.sax.Attributes].getLength()"
    - Src: "org.jdom2.input.sax.SAXHandler:624,1"
      Dst: "[org.xml.sax.Attributes].getLocalName(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:625,1"
      Dst: "[org.xml.sax.Attributes].getQName(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:626,1"
      Dst: "[org.xml.sax.ext.Attributes2].isSpecified(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:635,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:651,1"
      Dst: "[org.xml.sax.Attributes].getType(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:651,1"
      Dst: "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:653,1"
      Dst: "[org.xml.sax.Attributes].getValue(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:654,1"
      Dst: "[org.xml.sax.Attributes].getURI(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:681,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:682,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.input.sax.SAXHandler:682,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.input.sax.SAXHandler:682,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.input.sax.SAXHandler:682,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.input.sax.SAXHandler:683,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.input.sax.SAXHandler:683,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.input.sax.SAXHandler:683,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.input.sax.SAXHandler:688,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:705,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:705,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:705,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:705,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:706,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:715,1"
      Dst: "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.sax.SAXHandler:719,1"
      Dst: "[org.jdom2.Attribute].setSpecified(boolean)"
    - Src: "org.jdom2.input.sax.SAXHandler:721,1"
      Dst: "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 26
    BBCount: 51
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.input.sax.SAXHandler].transferNamespaces(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    - "[java.util.List].clear()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:734"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:739"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:738"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:735"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:738"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:737"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:734,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.input.sax.SAXHandler:734,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.input.sax.SAXHandler:734,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.input.sax.SAXHandler:735,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:736,1"
      Dst: "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    - Src: "org.jdom2.input.sax.SAXHandler:739,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.Element].getNamespace()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 238
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:385"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:389"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:388"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:389"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:397"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:396"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:390"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:393"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:392"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:398"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:402"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:401"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:386,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.Element:389,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.Element:389,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.Element:389,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.Element:397,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    - Src: "org.jdom2.Element:399,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    - Src: "org.jdom2.Element:402,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 670
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Verifier:671,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Namespace"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.Namespace].getURI()"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.IllegalAddException:282"
      Branch Sides:
      - BranchSide: "org.jdom2.IllegalAddException:282"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.IllegalAddException:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:282,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1133"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1137"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1134,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:184"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:189"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:188"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:189,1"
      Dst: "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.AttributeType"
    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: "org.jdom2.AttributeType:65,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespacesInScope()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Element].getNamespacePrefix()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getAdditionalNamespaces()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.TreeMap].containsKey(java.lang.Object)"
    - "[org.jdom2.Element].getAttributes()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Content].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.TreeMap].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[java.util.TreeMap].values()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1723"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1730"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1729"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1724"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1730"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1729"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1725"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1728"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1727"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1730"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1740"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1739"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1731"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1740"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1739"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1733"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1736"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1735"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1741"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1749"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1748"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1742"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1749"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1748"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1743"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1746"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1745"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1749"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1753"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1749"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1753"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:1720,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.jdom2.Element:1721,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:1721,1"
      Dst: "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Element:1722,1"
      Dst: "[org.jdom2.Element].getNamespacePrefix()"
    - Src: "org.jdom2.Element:1722,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[org.jdom2.Element].getAdditionalNamespaces()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.Element:1725,1"
      Dst: "[java.util.TreeMap].containsKey(java.lang.Object)"
    - Src: "org.jdom2.Element:1731,1"
      Dst: "[org.jdom2.Element].getAttributes()"
    - Src: "org.jdom2.Element:1732,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.Element:1740,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.Element:1742,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.Element:1754,1"
      Dst: "[java.util.TreeMap].size()"
    - Src: "org.jdom2.Element:1754,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.Element:1755,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.Element:1756,1"
      Dst: "[java.util.TreeMap].remove(java.lang.Object)"
    - Src: "org.jdom2.Element:1757,1"
      Dst: "[java.util.TreeMap].values()"
    - Src: "org.jdom2.Element:1757,1"
      Dst: "[java.util.ArrayList].addAll(java.util.Collection)"
    - Src: "org.jdom2.Element:1759,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 22
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespacePrefix()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:283,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getAdditionalNamespaces()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:436"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:439"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:437,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "org.jdom2.Element:439,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Element].getAttributes()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1104
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getAttributeList()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:1105,1"
      Dst: "[org.jdom2.Element].getAttributeList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getNamespace()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].setSpecified(boolean)"
    functionSourceFile: "org.jdom2.Attribute"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].transferNamespaces(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    - "[java.util.List].clear()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:734"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:739"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:738"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:735"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:738"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:737"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:734,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.input.sax.SAXHandler:734,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.input.sax.SAXHandler:734,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.input.sax.SAXHandler:735,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:736,1"
      Dst: "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    - Src: "org.jdom2.input.sax.SAXHandler:739,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.input.sax.SAXHandler].characters(char[],int,int)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.input.sax.TextBuffer].append(char[],int,int)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:756"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:757"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:756"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:756"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:759"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:758"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:756"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:759"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:758"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:759"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:763"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:762"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:765"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:769"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:768"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:760,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:763,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].append(char[],int,int)"
    - Src: "org.jdom2.input.sax.SAXHandler:766,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:767,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.TextBuffer].append(char[],int,int)"
    functionSourceFile: "org.jdom2.input.sax.TextBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(char[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.TextBuffer:102"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.TextBuffer:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.TextBuffer:104,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(char[],int)"
    - Src: "org.jdom2.input.sax.TextBuffer:106,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.internal.ArrayCopy].copyOf(char[],int)"
    functionSourceFile: "org.jdom2.internal.ArrayCopy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "char[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ArrayCopy:114"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ArrayCopy:113"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ArrayCopy:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ArrayCopy:114,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.sax.SAXHandler].ignorableWhitespace(char[],int,int)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].characters(char[],int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:788"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:791"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:790"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:789,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].characters(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].characters(char[],int,int)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.input.sax.TextBuffer].append(char[],int,int)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:756"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:757"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:756"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:756"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:759"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:758"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:756"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:759"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:758"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:759"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:763"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:762"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:765"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:769"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:768"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:760,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:763,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].append(char[],int,int)"
    - Src: "org.jdom2.input.sax.SAXHandler:766,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:767,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.JDOMFactory].cdata(int,int,java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(int,int,java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:822"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:834"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:833"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:822"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:834"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:833"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:834"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:839"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:838"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:835"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:834"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:839"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:838"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:822,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.input.sax.SAXHandler:835,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:835,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(int,int,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:837,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - Src: "org.jdom2.input.sax.SAXHandler:837,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - Src: "org.jdom2.input.sax.SAXHandler:839,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:839,1"
      Dst: "[org.jdom2.JDOMFactory].text(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.jdom2.input.sax.SAXHandler].endElement(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.Content].getParent()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:866"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:869"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:868"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:871"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:879"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:878"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:873"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:876"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:875"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:869,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:872,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.input.sax.SAXHandler:879,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:879,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:879,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:879,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].startDTD(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:903"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:900"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:901,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.jdom2.JDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:907,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].endDTD()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].getDocType()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:918,1"
      Dst: "[org.jdom2.Document].getDocType()"
    - Src: "org.jdom2.input.sax.SAXHandler:918,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:918,1"
      Dst: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Document].getDocType()"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].indexOfDocType()"
    - "[org.jdom2.ContentList].get(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:267"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:270"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:266,1"
      Dst: "[org.jdom2.ContentList].indexOfDocType()"
    - Src: "org.jdom2.Document:270,1"
      Dst: "[org.jdom2.ContentList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ContentList].indexOfDocType()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 479
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:480"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:481"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:482"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:481"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:480"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.ContentList].get(int)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 437
    functionDepth: 1
    returnType: "org.jdom2.Content"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkIndex(int,boolean)"
    functionUses: 51
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:438,1"
      Dst: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    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.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:187"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:186"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:190"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:194"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].startEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:928"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:929"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:928"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:933"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:934"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:940"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:939"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:944"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:974"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:948"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:960"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:959"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:960"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:971"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:970"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:962"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:960"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:934,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:947,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:961,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:969,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - Src: "org.jdom2.input.sax.SAXHandler:969,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 21
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1133"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1137"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1134,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].endEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:979"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:983"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:984"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:987"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:986"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:984,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].startCDATA()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:994"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:997"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:996"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].endCDATA()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1005"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1008"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1007"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1009,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].comment(char[],int,int)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[java.lang.String].<init>(char[],int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].comment(int,int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1032"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1035"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1034"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1038"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1041"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1038"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1041"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1038"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1041"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1042"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1053"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1052"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1042"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1053"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1052"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1043"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1047"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1050"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1049"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1035,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:1037,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    - Src: "org.jdom2.input.sax.SAXHandler:1039,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1042,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.jdom2.JDOMFactory].comment(int,int,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1048,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - Src: "org.jdom2.input.sax.SAXHandler:1050,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1133"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1137"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1134,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].notationDecl(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1069"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1072"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1071"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1072,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1073,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1112"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1115"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1114"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1115"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1123"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1122"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1116"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1119"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.jdom2.input.sax.SAXHandler].unparsedEntityDecl(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1093"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1096"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1095"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1096,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1097,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1112"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1115"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1114"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1115"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1123"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1122"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1116"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1119"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.jdom2.input.sax.SAXHandler].appendExternalId(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1112"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1115"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1114"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1115"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1123"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1122"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1116"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1119"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1113,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1133"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1137"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1134,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].setDocumentLocator(org.xml.sax.Locator)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.Locator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].getDocumentLocator()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.Locator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    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: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsXML(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - "[java.io.File].getPath()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:37,1"
      Dst: "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:38,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:39,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:40,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:41,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:43,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:43,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99,1"
      Dst: "[java.io.File].exists()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:177,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getDescription()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:185,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:188,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:188,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:189,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testrunner.TestCase"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getWorkspace()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.File].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:201,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:202,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:204,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:204,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getWorkspace()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.io.File].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:41,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:44,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:44,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:45,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:45,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:45,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:224"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:224"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:48,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:49,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:245,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:227,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].size()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:165,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:166,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:166,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:167,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:168,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:171,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:140,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:142,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:143,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:154,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryArgPairCode(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:109,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryArgPairCode(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryArgPairCode(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryCode(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryCode(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryCode(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:160,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:415,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:417,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:420,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:422,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[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)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:303,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "org.locationtech.jts.io.WKBWriter:304,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:309,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:196,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.io.WKBWriter:202,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.BufferedWriter].flush()"
    - "[java.io.BufferedWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.io.OutputStreamWriter].close()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.util.FileUtil:118,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.FileUtil:119,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:120,1"
      Dst: "[java.io.BufferedWriter].flush()"
    - Src: "org.locationtech.jtstest.util.FileUtil:121,1"
      Dst: "[java.io.BufferedWriter].close()"
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.util.FileUtil:122,1"
      Dst: "[java.io.OutputStreamWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].chooseSVGFile(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].<init>()"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - "[java.io.File].getPath()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:56,1"
      Dst: "[javax.swing.JFileChooser].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:57,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:58,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:59,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:59,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:61,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:63,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:66,1"
      Dst: "[java.io.File].getPath()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99,1"
      Dst: "[java.io.File].exists()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsHtmlSVG(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].chooseSVGFile(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTestSVG(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].chooseSVGFile(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTestSVG(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:73,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].chooseSVGFile(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].<init>()"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - "[java.io.File].getPath()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:56,1"
      Dst: "[javax.swing.JFileChooser].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:57,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:58,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:59,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:59,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:61,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:63,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:66,1"
      Dst: "[java.io.File].getPath()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTestSVG(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:35,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:32,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    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: "org.locationtech.jtstest.util.io.SVGWriter:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeStyles(java.lang.StringBuilder)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].defsMarkers()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTest(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:38,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeStyles(java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].defsMarkers()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:42,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:43,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:45,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTest(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:48,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:66,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeStyles(java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].style(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].styleClass(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].style(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].styleClass(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].style(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:61,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].styleClass(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:17,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:23"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:21,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:22,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:22,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].defsMarkers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 1
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].size()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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: "org.locationtech.jtstest.test.TestCaseList:33,1"
      Dst: "[java.util.ArrayList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:36,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTest(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jtstest.test.Testable"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTitle(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeSvg(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeomText(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTitle(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeSvg(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:89,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeomText(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTitle(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jtstest.test.Testable"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:104,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:107,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:106,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeSvg(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:111,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeometryWithClass(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:118,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:121,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:123,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:123,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:126,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:126,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeometryWithClass(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:143,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:147,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:301,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.geom.Envelope:306,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeometryWithClass(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:153,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:155,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.util.io.SVGWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:102,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:104,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:107,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jtstest.util.io.SVGWriter:109,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeomText(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jts.geom.Geometry].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elemAttr(java.lang.String,java.lang.String,java.lang.String[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:99,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elemAttr(java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elemAttr(java.lang.String,java.lang.String,java.lang.String[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:32,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:33,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlUtil:33,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.BufferedWriter].flush()"
    - "[java.io.BufferedWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.io.OutputStreamWriter].close()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.util.FileUtil:118,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.FileUtil:119,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:120,1"
      Dst: "[java.io.BufferedWriter].flush()"
    - Src: "org.locationtech.jtstest.util.FileUtil:121,1"
      Dst: "[java.io.BufferedWriter].close()"
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.util.FileUtil:122,1"
      Dst: "[java.io.OutputStreamWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsHtml(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].setShowingABwithSpatialFunction(boolean)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[java.io.File].exists()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].write(java.io.File,org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:83,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:84,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:85,1"
      Dst: "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].setShowingABwithSpatialFunction(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:100,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:101,1"
      Dst: "[java.io.File].exists()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:101,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].write(java.io.File,org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsJava(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - "[java.io.File].getName()"
    - "[java.lang.String].lastIndexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.io.File].getPath()"
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].getRunJava(java.lang.String,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:125,1"
      Dst: "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:126,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:127,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:128,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:129,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:131,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:132,1"
      Dst: "[java.lang.String].lastIndexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:134,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:137,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].getRunJava(java.lang.String,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:137,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:141,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99,1"
      Dst: "[java.io.File].exists()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].getRunJava(java.lang.String,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].getTestJava(java.util.List)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:29,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:29,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].getTestJava(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:41,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:482,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:482,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].getTestJava(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:47,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:48,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:49,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:49,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:51,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:55,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:245,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:60,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:61,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:72,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 19
  - functionName: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:382,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:385,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:388,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:390,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:443,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.WKTWriter:445,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.BufferedWriter].flush()"
    - "[java.io.BufferedWriter].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.io.OutputStreamWriter].close()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.io.FileWriter].<init>(java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.util.FileUtil:118,1"
      Dst: "[java.io.BufferedWriter].<init>(java.io.Writer)"
    - Src: "org.locationtech.jtstest.util.FileUtil:119,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:120,1"
      Dst: "[java.io.BufferedWriter].flush()"
    - Src: "org.locationtech.jtstest.util.FileUtil:121,1"
      Dst: "[java.io.BufferedWriter].close()"
    - Src: "org.locationtech.jtstest.util.FileUtil:117,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.util.FileUtil:122,1"
      Dst: "[java.io.OutputStreamWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].precisionModel(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[org.locationtech.jtstest.testrunner.GuiUtil].center(java.awt.Component,java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[java.awt.Dialog].setVisible(boolean)"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].changePrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:149,1"
      Dst: "[org.locationtech.jtstest.testrunner.GuiUtil].center(java.awt.Component,java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:151,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].changePrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Frame"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].jbInit()"
    - "[java.awt.Window].pack()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:36,1"
      Dst: "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:29,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:30,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:33,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:39,1"
      Dst: "[java.awt.Window].pack()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:42,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[javax.swing.JRadioButton].<init>()"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:47,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:38,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:39,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:40,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:42,1"
      Dst: "[javax.swing.JRadioButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:44,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:52,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$2].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$3].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:56,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:57,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:58,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:59,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:61,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:62,1"
      Dst: "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:63,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:63,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:64,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:66,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:71,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:72,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$2].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$3].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:91,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:91,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:91,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:103,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1:72,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$2].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$2:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$3].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$3:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog$1].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelDialog)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[javax.swing.JDialog].getContentPane()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:50,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:51,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog$1].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:52,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:57,1"
      Dst: "[javax.swing.JDialog].getContentPane()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:57,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:58,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog$1].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.PrecisionModelDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog$1:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Double].toString(double)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].updateDisplay()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:111,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:112,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:116,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:116,1"
      Dst: "[java.lang.Double].toString(double)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:116,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].updateDisplay()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getType()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel$Type"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].updateDisplay()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].isFloatingSelected()"
    - "[javax.swing.JComponent].setEnabled(boolean)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].isFloatingSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:136,1"
      Dst: "[javax.swing.JComponent].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:137,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:138,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].isFloatingSelected()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:149,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].getPrecisionModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelDialog:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:123,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:124,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:127,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:129,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:129,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:130,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel$Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:171,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:175,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:312,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].changePrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].saveWKTBeforePMChange()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadWKTAfterPMChange()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:418,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].saveWKTBeforePMChange()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:419,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:420,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadWKTAfterPMChange()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].saveWKTBeforePMChange()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].clear()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].toText()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:431"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:424,1"
      Dst: "[java.util.ArrayList].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:427,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:428,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toText()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadWKTAfterPMChange()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:444"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:443"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:440"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:436,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:436,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:436,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:438,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:439,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:441,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:441,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:187,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.WKTReader:190,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[java.io.StringReader].close()"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:237,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:239,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTReader:242,1"
      Dst: "[java.io.StringReader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].toString()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    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)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:461"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:460"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:462,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:462,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:462,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:462,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:462,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:204,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:205,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:205,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:205,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:491,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:493,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:150,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:179,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:181,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:496,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getName()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:151,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getName()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:106,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:498,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(org.locationtech.jts.geom.Geometry,int)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.WKTPanel:366"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:368"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:367"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.WKTPanel:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:371"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:370"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:364,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:368,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:371,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:375,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:376,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:376,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:145,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:148,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:415,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:417,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:420,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:422,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:30,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].getSavePNGFileChooser()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JFileChooser"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].<init>()"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:166,1"
      Dst: "[javax.swing.JFileChooser].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:167,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:168,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:169,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:169,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame)"
    - "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:181,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Frame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Frame"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].initUI()"
    - "[java.awt.Window].pack()"
    - "[java.awt.Window].setSize(int,int)"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:30,1"
      Dst: "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].initUI()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:33,1"
      Dst: "[java.awt.Window].pack()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:34,1"
      Dst: "[java.awt.Window].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:37,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].initUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    - "[javax.swing.JDialog].getContentPane()"
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:54,1"
      Dst: "[javax.swing.JDialog].getContentPane()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:54,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:38,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:41,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryInspectorDialog:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:199,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:200,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:201,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:202,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:163,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:163,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].viewCaseText(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:192,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Frame"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[javax.swing.JRadioButton].<init>()"
    - "[javax.swing.JCheckBox].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].jbInit()"
    - "[java.awt.Window].pack()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:71,1"
      Dst: "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:42,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:43,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:44,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:45,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:50,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:55,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:56,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:58,1"
      Dst: "[javax.swing.JRadioButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:68,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:74,1"
      Dst: "[java.awt.Window].pack()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:76,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$1].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$2].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$5].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$7].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$9].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[javax.swing.JDialog].getContentPane()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    functionUses: 0
    ICount: 178
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:85,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:86,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:86,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:87,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:89,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:90,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$1].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:91,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:97,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$2].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$5].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$7].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$9].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:165,1"
      Dst: "[javax.swing.JDialog].getContentPane()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:165,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:166,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:180,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:188,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$1].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$1:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$2].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$2:99,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$5].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$5:123,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6:131,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$7].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$7:140,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8:147,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$9].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$9:154,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10:160,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.AbstractButton].doClick()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:202,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:203,1"
      Dst: "[javax.swing.AbstractButton].doClick()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].showAbout(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].<init>(java.awt.Frame)"
    - "[java.awt.Container].getPreferredSize()"
    - "[java.awt.Component].getSize()"
    - "[java.awt.Component].getLocation()"
    - "[java.awt.Window].setLocation(int,int)"
    - "[java.awt.Dialog].setModal(boolean)"
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].<init>(java.awt.Frame)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:199,1"
      Dst: "[java.awt.Container].getPreferredSize()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:200,1"
      Dst: "[java.awt.Component].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:201,1"
      Dst: "[java.awt.Component].getLocation()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:202,1"
      Dst: "[java.awt.Window].setLocation(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:204,1"
      Dst: "[java.awt.Dialog].setModal(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:205,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].<init>(java.awt.Frame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Frame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JDialog].<init>(java.awt.Frame)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.FlowLayout].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.JTSVersion].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.Component].enableEvents(long)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[java.awt.Window].pack()"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:59,1"
      Dst: "[javax.swing.JDialog].<init>(java.awt.Frame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:37,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:42,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:43,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:49,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:51,1"
      Dst: "[java.awt.FlowLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:52,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[org.locationtech.jts.JTSVersion].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:60,1"
      Dst: "[java.awt.Component].enableEvents(long)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:64,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:66,1"
      Dst: "[java.awt.Window].pack()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.JTSVersion].toString()"
    functionSourceFile: "org.locationtech.jts.JTSVersion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.JTSVersion:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.JTSVersion:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.JTSVersion:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.JTSVersion:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.JTSVersion:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.JTSVersion:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.JTSVersion:93,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.JTSVersion:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.JTSVersion:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.JTSVersion:94,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Dialog].setTitle(java.lang.String)"
    - "[java.awt.Dialog].setResizable(boolean)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.GridLayout].setRows(int)"
    - "[java.awt.GridLayout].setColumns(int)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JDialog].getContentPane()"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:72,1"
      Dst: "[java.awt.Dialog].setTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:73,1"
      Dst: "[java.awt.Dialog].setResizable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:74,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:78,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:78,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:79,1"
      Dst: "[java.awt.GridLayout].setRows(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:80,1"
      Dst: "[java.awt.GridLayout].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:82,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:82,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:83,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:84,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:97,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:98,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:99,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:101,1"
      Dst: "[javax.swing.JDialog].getContentPane()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].<init>(org.locationtech.jts.geom.Coordinate,boolean,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:99,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkSegment(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkVertex(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 4
    ICount: 26
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:113"
        BranchSideFuncs:
        - "getCoordinateSequence()"
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:129"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:120"
        BranchSideFuncs:
        - "checkSegment(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:119"
        BranchSideFuncs:
        - "checkVertex(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:113"
        BranchSideFuncs:
        - "getCoordinateSequence()"
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:115,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:116,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkSegment(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkVertex(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkSegment(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 49
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:155"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:164"
        BranchSideFuncs:
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:134,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:138,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:158,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:160,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkVertex(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkSegment(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 49
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:155"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:164"
        BranchSideFuncs:
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:134,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:138,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:158,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:160,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].checkVertex(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isDone()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:189"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$13].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:328,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$13].stateChanged(javax.swing.event.ChangeEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].getSource()"
    - "[javax.swing.JSlider].getValueIsAdjusting()"
    - "[javax.swing.JSlider].getValue()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineAlpha(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:336"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:330,1"
      Dst: "[java.util.EventObject].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:331,1"
      Dst: "[javax.swing.JSlider].getValueIsAdjusting()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:332,1"
      Dst: "[javax.swing.JSlider].getValue()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:333,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:333,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineAlpha(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$13:335,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineAlpha(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.AppColors].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.AppColors"
    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: "org.locationtech.jtstest.testbuilder.AppColors:17,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    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: "org.locationtech.jtstest.util.io.IOUtil:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readShapefile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGMLFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:40,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:41,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:42,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readShapefile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:44,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:46,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGMLFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:48,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:49,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].name(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.FileUtil:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.FileUtil:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.FileUtil:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:44,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].name(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:45,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jtstest.util.FileUtil:45,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "org.locationtech.jtstest.util.FileUtil:47,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.FileUtil:47,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.FileUtil].name(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].getName()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:38,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:39,1"
      Dst: "[java.io.File].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readShapefile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:55,1"
      Dst: "[java.io.FileInputStream].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:62,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - "[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)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    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()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    - "[java.io.DataInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:29,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:29,1"
      Dst: "[java.io.DataInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readInt()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:77,1"
      Dst: "[java.io.DataInputStream].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[],int,int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:82,1"
      Dst: "[java.io.DataInputStream].readFully(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[],int,int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:115,1"
      Dst: "[java.io.DataInputStream].readFully(byte[],int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:125,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].skipBytes(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:132,1"
      Dst: "[java.io.DataInputStream].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:261,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler"
    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: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:40"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:40"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException"
    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: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException:31,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:42,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:42,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:37,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:38,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:37,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:38,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:42,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:42,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException:22,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:199,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:200,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:204,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:205,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].close()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:34,1"
      Dst: "[java.io.FilterInputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:77,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:77,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:88,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:88,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.FileUtil].readText(java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.io.FileInputStream].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.FileUtil:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.FileUtil:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.FileUtil:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:101,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:103,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "org.locationtech.jtstest.util.FileUtil:104,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.util.FileUtil:104,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jtstest.util.FileUtil:105,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "org.locationtech.jtstest.util.FileUtil:106,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.FileUtil:106,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:106,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.FileUtil:106,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:108,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "org.locationtech.jtstest.util.FileUtil:105,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.util.FileUtil:109,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:134,1"
      Dst: "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:135,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:135,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:136,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:138,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:139,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:141,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:141,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGMLFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGMLString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:71,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:71,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGMLString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGMLString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:147,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:148,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    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: "org.locationtech.jts.io.gml2.GMLReader:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLReader:89,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:89,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:155,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:155,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:161,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:162,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:34,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollection(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:45,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:46,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollection(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:48,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKTFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:98,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:98,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:113,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - "[org.locationtech.jts.io.WKTFileReader].setStrictParsing(boolean)"
    - "[org.locationtech.jts.io.WKTFileReader].read()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:120,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:121,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:121,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:122,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].setStrictParsing(boolean)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:123,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:126,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readShapefile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:55,1"
      Dst: "[java.io.FileInputStream].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:62,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGMLFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGMLString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:71,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:71,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGMLString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:77,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:77,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].cleanHex(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:92,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKTFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:98,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:98,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:113,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - "[org.locationtech.jts.io.WKTFileReader].setStrictParsing(boolean)"
    - "[org.locationtech.jts.io.WKTFileReader].read()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:120,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:121,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:121,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:122,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].setStrictParsing(boolean)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:123,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:126,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:134,1"
      Dst: "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:135,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:135,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:136,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:138,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:139,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:141,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:141,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGMLString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:147,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:148,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:155,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:155,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:161,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:162,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].read(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle,org.locationtech.jtstest.testbuilder.ui.style.StyleList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    - "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].update(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].update(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].copy()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].update(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].update(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    - "[java.awt.Color].darker()"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[java.awt.Color].darker()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].update(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setStructure(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOrientations(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setStructure(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOrientations(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setStructure(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:277,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOrientations(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:261,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:56,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:183,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[java.awt.BasicStroke].<init>(float)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:76,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:79,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getDecoratorStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].initDecorators(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    - "[java.awt.Color].darker()"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[java.awt.Color].darker()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].update(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setStructure(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOrientations(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setStructure(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOrientations(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setFillType(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[java.awt.Color].getHSBColor(float,float,float)"
    - "[java.awt.Color].getAlpha()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:49,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:50,1"
      Dst: "[java.awt.Color].getHSBColor(float,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].getAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setEndpoints(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:183,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexLabels(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabel(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getColor()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getColor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].offsetLine(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].offsetLine(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:238,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:238,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].offsetLine(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].trimLine(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:294,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:296,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:296,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:298,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:298,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:299,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:300,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:300,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].trimLine(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferParameters:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:-1"
        BranchSideFuncs:
        - "getSegGen(double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:157"
        BranchSideFuncs:
        - "computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:156"
        BranchSideFuncs:
        - "computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:163"
        BranchSideFuncs:
        - "reverse(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:151,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:152,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:154,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:157,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:159,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:162,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 5
    returnType: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters,double)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:177,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createCircle(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createSquare(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:193,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:195,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createCircle(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:198,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createSquare(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 286
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 40
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:306"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "addFirstSegment()"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:317"
        BranchSideFuncs:
        - "addLastSegment()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:287,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:287,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:292,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:298,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:299,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:301,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:318,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getSimplifyFactor()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:189,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getSimplifyFactor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:69,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:70,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    functionUses: 7
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:166,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:187,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCollinear(boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addOutsideTurn(int,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addInsideTurn(int,boolean)"
    functionUses: 7
    ICount: 53
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:213"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:222"
        BranchSideFuncs:
        - "addCollinear(boolean)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:226"
        BranchSideFuncs:
        - "addInsideTurn(int,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:206,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:207,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].computeOffsetSegment(org.locationtech.jts.geom.LineSegment,int,double,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:212,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:214,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:220,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addCollinear(boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:224,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addOutsideTurn(int,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:227,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addInsideTurn(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:195,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator:171,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:483"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].trimLine(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:306"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:305,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:307,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:308,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].clampIndex(double)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double,boolean)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthIndexedLine:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:95,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].clampIndex(double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:99,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double,boolean)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:102,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:103,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].clampIndex(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].positiveIndex(double)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].getStartIndex()"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].getEndIndex()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthIndexedLine:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthIndexedLine:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:237,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].positiveIndex(double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:238,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].getStartIndex()"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:241,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].getEndIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].positiveIndex(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthIndexedLine:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:250,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].getStartIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].getEndIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:214,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:113,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:61,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:62,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocationForward(double)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].resolveHigher(org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:119,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocationForward(double)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:123,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].resolveHigher(org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocationForward(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    - "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:129,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:133,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:134,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:144,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:146,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:147,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:148,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:152,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:153,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:154,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:165,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:168,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    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: "org.locationtech.jts.linearref.LinearLocation:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:64,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:89,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.linearref.LinearIterator:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:96,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:105,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:120,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:149,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:87,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:91,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:143"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:177,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:189,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:130,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:133,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:39,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:40,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:216,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:217,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:218,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:488"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:489"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:488"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:487,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].resolveHigher(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].isEndpoint(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:173,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].isEndpoint(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:175,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:177,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:182,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:182,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:184,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].isEndpoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:418"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:419,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:421,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:108,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:44,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:45,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:97,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:41,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:42,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].computeLinear(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].reverse(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:61,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:62,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].computeLinear(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:62,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].reverse(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:329"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:328"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:331"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:332"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:333"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].computeLinear(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].setFixInvalidLines(boolean)"
    - "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].getGeometry()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:131,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:131,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:132,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].setFixInvalidLines(boolean)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:134,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:137,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:137,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:138,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:138,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:138,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:142,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:144,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:145,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:137,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:150,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:34,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].setFixInvalidLines(boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:249"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:264,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:265,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:268,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:67,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:68,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:75,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:86,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].segmentEndVertexIndex(org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:76,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:76,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].segmentEndVertexIndex(org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LinearIterator:76,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].segmentEndVertexIndex(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:42,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:43,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:350"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:352"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:351"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:353"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:354"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:355"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:356"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].validCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:101,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:105,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:108,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].validCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:122,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].validCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:136,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].reverse(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:72,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createStroke()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].createStroke()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFullyEnabled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:38,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:38,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:39,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFullyEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFullyEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFiltered()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFiltered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFiltered()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter].isFiltered(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter].isFiltered(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.Style"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].offsetLine(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].offsetLine(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:238,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:238,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOffset(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOffsetSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOrientations(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:261,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setStructure(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:277,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setShift(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].offsetLine(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].trimLine(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:294,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:296,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:296,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:298,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:298,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:299,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:300,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:300,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].trimLine(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].trimLine(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:306"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:305,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:307,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:308,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].access$000(org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].access$000(org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].access$000(org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].paint()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].paint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].paint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:64,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    - "java.awt.Color"
    - "java.awt.Stroke"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.awt.ShapeWriter,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.EdgeEndStar)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geomgraph.EdgeEndStar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:32,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Node:35,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeEndStar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].isIncidentEdgeInResult()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:56"
        BranchSideFuncs:
        - "isInResult()"
        - "getEdge()"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.Node:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Node:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.Node:51,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.Node:52,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.Node:53,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.geomgraph.Node:53,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:60"
        BranchSideFuncs:
        - "getGeometryCount()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:61,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Node].computeIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].setNode(org.locationtech.jts.geomgraph.Node)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:75,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - Src: "org.locationtech.jts.geomgraph.Node:76,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].setNode(org.locationtech.jts.geomgraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Label)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:81,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].computeMergedLocation(org.locationtech.jts.geomgraph.Label,int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Node:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:95,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].computeMergedLocation(org.locationtech.jts.geomgraph.Label,int)"
    - Src: "org.locationtech.jts.geomgraph.Node:96,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.Node:97,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Node].computeMergedLocation(org.locationtech.jts.geomgraph.Label,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:143,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.Node:144,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:125,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:171,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:132,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].computeMergedLocation(org.locationtech.jts.geomgraph.Label,int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Node:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:95,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].computeMergedLocation(org.locationtech.jts.geomgraph.Label,int)"
    - Src: "org.locationtech.jts.geomgraph.Node:96,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.Node:97,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:107"
        BranchSideFuncs:
        - "<init>(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Node:106"
        BranchSideFuncs:
        - "setLocation(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:104,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Node:107,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Node].setLabelBoundary(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:117"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:125"
        BranchSideFuncs:
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Node:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:122,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.Node:130,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:125,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:132,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].computeMergedLocation(org.locationtech.jts.geomgraph.Label,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:143,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.Node:144,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Node].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    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()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].toString()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:157,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Node:157,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Node:157,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.Node:157,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:47,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setLabel(long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:72"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setRing(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$7].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$7:192,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$7].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].access$000(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$7:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].access$000(org.locationtech.jtstest.testbuilder.ValidPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].access$000(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:351,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].<init>(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:39,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isInvalid()"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:56"
        BranchSideFuncs:
        - "isInvalid()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:56"
        BranchSideFuncs:
        - "isInvalid()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:57,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isInvalid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isInvalid()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:60"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isInvalid()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:60"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidCode()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 64
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].hasDoubleTouch()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 72
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getDoubleTouchLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 10
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].findInvalidIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    functionUses: 4
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:86"
        BranchSideFuncs:
        - "findInvalidIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:97"
        BranchSideFuncs:
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:87,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].findInvalidIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:95,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].findInvalidIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 9
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 1
    ICount: 79
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs:
        - "getIntersectionNum()"
        - "isProper()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:125"
        BranchSideFuncs:
        - "isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:125"
        BranchSideFuncs:
        - "isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:125"
        BranchSideFuncs:
        - "isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:165"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:172"
        BranchSideFuncs:
        - "prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:171"
        BranchSideFuncs:
        - "isCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:192"
        BranchSideFuncs:
        - "addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:191"
        BranchSideFuncs:
        - "addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:192"
        BranchSideFuncs:
        - "addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:191"
        BranchSideFuncs:
        - "addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:101,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:106,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:108,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:126,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:133,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:163,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:172,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:182,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:192,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 33
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:247"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:241,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:248,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 223
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:228"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:227"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:226,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:228,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 8
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].compareBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 22
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:60"
        BranchSideFuncs:
        - "compareBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:59"
        BranchSideFuncs:
        - "compareBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:42,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:58,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].compareBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:157"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:157"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:145,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:158,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].compareBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 7
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].compareAngle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:129"
        BranchSideFuncs:
        - "compareAngle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:128"
        BranchSideFuncs:
        - "compareAngle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:127,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].compareAngle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].compareAngle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:184"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:172,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:185,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    functionUses: 4
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:194,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:195,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:196,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].addSelfTouch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:211"
        BranchSideFuncs:
        - "addSelfTouch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:208,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:210,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:212,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].addSelfTouch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].addSelfTouch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:224"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:223,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:225,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:225,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingSelfNode"
    linkageType: null
    functionLinenumber: 414
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:415,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:203,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:203,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRing].isSamePolygon(org.locationtech.jts.operation.valid.PolygonRing)"
    - "[org.locationtech.jts.operation.valid.PolygonRing].isOnlyTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:81"
        BranchSideFuncs:
        - "isSamePolygon(org.locationtech.jts.operation.valid.PolygonRing)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:85"
        BranchSideFuncs:
        - "isOnlyTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:84"
        BranchSideFuncs:
        - "isOnlyTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:86"
        BranchSideFuncs:
        - "addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:82,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].isSamePolygon(org.locationtech.jts.operation.valid.PolygonRing)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:84,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].isOnlyTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:87,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].isSamePolygon(org.locationtech.jts.operation.valid.PolygonRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:183"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].isOnlyTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRingTouch].isAtLocation(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:242"
        BranchSideFuncs:
        - "isAtLocation(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:240,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:240,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:243,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingTouch].isAtLocation(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].isAtLocation(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 391
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingTouch:392,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 211
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRingTouch].<init>(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:219"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:213,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:215,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:215,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:217,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingTouch].<init>(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:217,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].<init>(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingTouch:378,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].findInvalidIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 9
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 1
    ICount: 79
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs:
        - "getIntersectionNum()"
        - "isProper()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:125"
        BranchSideFuncs:
        - "isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:125"
        BranchSideFuncs:
        - "isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:125"
        BranchSideFuncs:
        - "isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:165"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:172"
        BranchSideFuncs:
        - "prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:171"
        BranchSideFuncs:
        - "isCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:192"
        BranchSideFuncs:
        - "addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:191"
        BranchSideFuncs:
        - "addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:192"
        BranchSideFuncs:
        - "addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:191"
        BranchSideFuncs:
        - "addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:101,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:106,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:108,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:118,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:126,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:133,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:163,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:172,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isCrossing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:182,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:192,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 33
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addDoubleTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:203,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:203,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].addTouch(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].addSelfTouch(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].addSelfTouch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:211"
        BranchSideFuncs:
        - "addSelfTouch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:208,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:210,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:212,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].addSelfTouch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].prevCoordinateInRing(org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 223
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:228"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:227"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:226,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:228,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isAdjacentInRing(org.locationtech.jts.noding.SegmentString,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:247"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:241,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:248,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:91,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:92,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:254,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:255,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:522"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:520,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:523,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:528,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:531,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:533,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:537,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:811,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:811,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:139,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:140,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToScale(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:189,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:190,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToScale(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToScale(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:236,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:237,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:106,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:107,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:254,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:255,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:560"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:568"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:567"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:560"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:568"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:567"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:568"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:578"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:561,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:579,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:582,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:584,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:811,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:811,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:123,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:123,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:123,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:139,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:140,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:139,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:140,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:175,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:176,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:254,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:255,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:175,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:176,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToScale(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:189,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:190,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToScale(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:205,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:206,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:207,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:254,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:255,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].shearInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToShear(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:222,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:223,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToShear(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:254,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:255,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToShear(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:236,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:237,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:254,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:255,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double[])"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:267,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:293,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:294,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:304,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:305,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:328,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:329,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].getMatrixEntries()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].getDeterminant()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].getInverse()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].getDeterminant()"
    - "[org.locationtech.jts.geom.util.NoninvertibleTransformationException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double,double,double,double,double,double)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:469"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:472"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:468,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].getDeterminant()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:470,1"
      Dst: "[org.locationtech.jts.geom.util.NoninvertibleTransformationException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:479,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double,double,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].getDeterminant()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.NoninvertibleTransformationException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.util.NoninvertibleTransformationException"
    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: "org.locationtech.jts.geom.util.NoninvertibleTransformationException:30,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:293,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:294,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflectionBasic(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:495"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:494"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:495"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:494"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:493,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:497,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:522"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:520,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:523,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:528,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:531,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:533,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:537,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:560"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:568"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:567"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:560"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:568"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:567"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:568"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:578"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:561,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:579,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:582,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:584,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:608,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:608,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:608,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:655,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:655,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:655,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToScale(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToShear(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].reflect(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double,double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:764,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double,double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:764,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:91,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:92,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].reflect(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:779,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:779,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].reflectionInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:106,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:107,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToReflection(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:795,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:795,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:123,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:123,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:123,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:811,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:811,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:829,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:829,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:847,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:847,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:175,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:176,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToRotation(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].shear(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].shearInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:877,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].shearInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:877,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].shearInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToShear(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:222,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:223,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToShear(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].composeBefore(org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:986,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:987,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: 999
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 24
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1000,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1002,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: 1013
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1014,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.CoordinateSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: 999
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 24
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1000,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1002,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: 1018
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].isDone()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: 1029
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].isIdentity()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1040"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1040"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1040"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1040"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1040"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1040"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: 1054
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1055"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:1056"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:1055"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1056"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:1059"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:1058"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1060"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1060"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1060"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1060"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1060"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformation:1060"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformation:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].hashCode()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1076,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].toString()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1103,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1103,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1103,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1103,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].clone()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: 1115
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1116,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:1118,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].findBoundarySegments(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].<init>(java.util.Set)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:36,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:37,1"
      Dst: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].<init>(java.util.Set)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:39,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].<init>(java.util.Set)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:51,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isBoundarySegment(java.util.Set,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:45,1"
      Dst: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:46,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:75,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:76,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].normalize()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].reverse()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:204,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:204,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].<init>(java.util.Set)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:51,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:59"
        BranchSideFuncs:
        - "createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Branch String: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:58,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:60,1"
      Dst: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:66,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:67,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:70,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:75,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:76,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:75,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:76,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isDone()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:40,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:54,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 2
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.DissolveEdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:66,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:68,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 1
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:54,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].setSym(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].setNext(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 2
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:89,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].setSym(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:92,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].setNext(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].addEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 11
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraph].isValidEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:97"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:100"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:85,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].isValidEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:92,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:95,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:101,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].isValidEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:112"
        BranchSideFuncs:
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 1
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:229"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "dest()"
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:228"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "dest()"
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:230"
        BranchSideFuncs:
        - "oNext()"
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:229,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:229,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:231,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 212
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 10
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraph].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:141"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.edgegraph.HalfEdge)"
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:140"
        BranchSideFuncs:
        - "sym()"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:127,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:129,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:133,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:136,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:138,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 2
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.DissolveEdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:66,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:68,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insertAfter(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insertionEdge(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:263"
        BranchSideFuncs:
        - "insertionEdge(org.locationtech.jts.edgegraph.HalfEdge)"
        - "insertAfter(org.locationtech.jts.edgegraph.HalfEdge)"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:257,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:259,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insertAfter(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:264,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insertionEdge(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].isValidEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:112"
        BranchSideFuncs:
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 10
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraph].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:141"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.edgegraph.HalfEdge)"
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:140"
        BranchSideFuncs:
        - "sym()"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:127,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:129,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:133,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:136,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:138,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].getVertexEdges()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:154,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].findEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:166,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:168,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 1
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:229"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "dest()"
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:228"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "dest()"
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:230"
        BranchSideFuncs:
        - "oNext()"
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:229,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:229,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:231,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].loadStrategies()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.HashMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.lang.String].toLowerCase()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$1].<init>()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$2].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$3].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$4].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$5].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$6].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$7].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$8].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$9].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$10].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$11].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$12].<init>()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$13].<init>()"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:67,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:70,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:70,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$1].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:70,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:96,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$2].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:133,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$3].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:170,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$4].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:195,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$5].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:219,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$6].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:242,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$7].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:265,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$8].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:288,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$9].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:306,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$10].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:423,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$11].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:446,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$12].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:464,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$13].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$1].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$1:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$2].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$2:96,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$3].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$3:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$4].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$4:170,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$5].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$5:195,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$6].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$6"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies$6:219,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$7].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$7:242,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$8].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$8:265,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$9].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$9:288,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$10].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$10"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$10:306,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$10:308,1"
      Dst: "[java.util.WeakHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$11].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$11"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies$11:423,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$12].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$12"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies$12:446,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$13].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$13"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies$13:464,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.xml.sax.Attributes"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:497,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:498,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:499,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:500,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:503,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:504,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:506,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:508,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    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: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:530"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:529"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:526,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:527,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:528,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].findStrategy(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toLowerCase()"
    - "[java.util.HashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:541"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:540"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:541,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:541,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition$1].<init>(org.locationtech.jts.operation.union.SpatialPartition,int,org.locationtech.jts.operation.union.DisjointSets,org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.operation.union.SpatialPartition"
    - "int"
    - "org.locationtech.jts.operation.union.DisjointSets"
    - "org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition$1:102,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition$1].visitItem(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition$1"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].isInSameSubset(int,int)"
    - "[org.locationtech.jts.operation.union.PartitionedUnion$1].isEquivalent(int,int)"
    - "[org.locationtech.jts.operation.union.DisjointSets].merge(int,int)"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation].isEquivalent(int,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SpatialPartition$1:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SpatialPartition$1:111"
        BranchSideFuncs:
        - "isInSameSubset(int,int)"
    - Branch String: "org.locationtech.jts.operation.union.SpatialPartition$1:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SpatialPartition$1:113"
        BranchSideFuncs:
        - "isEquivalent(int,int)"
    - Branch String: "org.locationtech.jts.operation.union.SpatialPartition$1:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SpatialPartition$1:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition$1:106,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition$1:112,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].isInSameSubset(int,int)"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition$1:114,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation].isEquivalent(int,int)"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition$1:116,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].merge(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].isInSameSubset(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:60"
        BranchSideFuncs:
        - "findRoot(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:61,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:107"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].merge(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionUses: 1
    ICount: 38
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:75,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$2].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.WindowAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$2:95,1"
      Dst: "[java.awt.event.WindowAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$2].windowOpened(java.awt.event.WindowEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.WindowEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].this_windowOpened(java.awt.event.WindowEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$2:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].this_windowOpened(java.awt.event.WindowEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].this_windowOpened(java.awt.event.WindowEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.WindowEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog$3].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].start()"
    - "[javax.swing.Timer].start()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:136,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog$3].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:148,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:149,1"
      Dst: "[java.lang.Thread].start()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:150,1"
      Dst: "[javax.swing.Timer].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$3].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$3:137,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].<init>(java.lang.Object,org.jdom2.xpath.XPathExpression,java.util.List,boolean)"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "org.jdom2.xpath.XPathExpression"
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[org.jdom2.xpath.XPathExpression].getFilter()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.jdom2.filter.Filter].filter(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.util.XPathDiagnosticImpl:105"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.util.XPathDiagnosticImpl:115"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.util.XPathDiagnosticImpl:114"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.util.XPathDiagnosticImpl:108"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.util.XPathDiagnosticImpl:111"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.util.XPathDiagnosticImpl:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:97,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:99,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:100,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:103,1"
      Dst: "[org.jdom2.xpath.XPathExpression].getFilter()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:105,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:105,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:105,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:106,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:107,1"
      Dst: "[org.jdom2.filter.Filter].filter(java.lang.Object)"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:119,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].getContext()"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].getXPathExpression()"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.xpath.XPathExpression"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].getResult()"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].getFilteredResults()"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].getRawResults()"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].isFirstOnly()"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.util.XPathDiagnosticImpl].toString()"
    functionSourceFile: "org.jdom2.xpath.util.XPathDiagnosticImpl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.XPathExpression].getExpression()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.util.List].size()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.util.XPathDiagnosticImpl:157"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.util.XPathDiagnosticImpl:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:157,1"
      Dst: "[org.jdom2.xpath.XPathExpression].getExpression()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:157,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:157,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:157,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:157,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.jdom2.xpath.util.XPathDiagnosticImpl:157,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$13].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$13"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies$13:464,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$13].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$13:467"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$13:473"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$13:472"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$13:467,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$13:468,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$13:473,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:66,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getVertexCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getStretchedVertex(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromVertex(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromSeg(org.locationtech.jts.geom.LineSegment,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromVertex(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromSeg(org.locationtech.jts.geom.LineSegment,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isNearRing()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:101,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getNearRingPoint(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromPoint(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:116,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:120,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:122,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromSeg(org.locationtech.jts.geom.LineSegment,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:128,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:131,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:135,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromVertex(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isNearRing()"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromPoint(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getNearRingPoint(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCornerAwayFromArms(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:141,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isNearRing()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromPoint(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].getNearRingPoint(int)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCornerAwayFromArms(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCornerOriginal(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isFlat(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromFlatCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].normalizedOffset(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:162,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isFlat(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:163,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromFlatCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:165,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].normalizedOffset(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:171,1"
      Dst: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:172,1"
      Dst: "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:174,1"
      Dst: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isFlat(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:249,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:250,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromFlatCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - "[org.locationtech.jts.math.Vector2D].normalize()"
    - "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:333,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:333,1"
      Dst: "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:334,1"
      Dst: "[org.locationtech.jts.math.Vector2D].normalize()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:334,1"
      Dst: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:335,1"
      Dst: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:67,1"
      Dst: "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Vector2D:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:261"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Vector2D:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:264,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    - Src: "org.locationtech.jts.math.Vector2D:272,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].<init>(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:34,1"
      Dst: "[org.locationtech.jts.math.Vector2D].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].normalize()"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].length()"
    - "[org.locationtech.jts.math.Vector2D].divide(double)"
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Vector2D:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:159,1"
      Dst: "[org.locationtech.jts.math.Vector2D].length()"
    - Src: "org.locationtech.jts.math.Vector2D:161,1"
      Dst: "[org.locationtech.jts.math.Vector2D].divide(double)"
    - Src: "org.locationtech.jts.math.Vector2D:162,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:133,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:282,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:265,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].normalizedOffset(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].normalize()"
    - "[org.locationtech.jts.math.Vector2D].add(org.locationtech.jts.math.Vector2D)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:324,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:324,1"
      Dst: "[org.locationtech.jts.math.Vector2D].normalize()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:326,1"
      Dst: "[org.locationtech.jts.math.Vector2D].add(org.locationtech.jts.math.Vector2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].add(org.locationtech.jts.math.Vector2D)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.Vector2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:119,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].normalize()"
    - "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    - "[org.locationtech.jts.math.Vector2D].rotate(double)"
    - "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:182,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:182,1"
      Dst: "[org.locationtech.jts.math.Vector2D].normalize()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:184,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:185,1"
      Dst: "[org.locationtech.jts.math.Vector2D].rotate(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:186,1"
      Dst: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:190,1"
      Dst: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:67,1"
      Dst: "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].normalize()"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].length()"
    - "[org.locationtech.jts.math.Vector2D].divide(double)"
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Vector2D:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:159,1"
      Dst: "[org.locationtech.jts.math.Vector2D].length()"
    - Src: "org.locationtech.jts.math.Vector2D:161,1"
      Dst: "[org.locationtech.jts.math.Vector2D].divide(double)"
    - Src: "org.locationtech.jts.math.Vector2D:162,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.Vector2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].angle()"
    - "[org.locationtech.jts.algorithm.Angle].diff(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:219,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angle()"
    - Src: "org.locationtech.jts.math.Vector2D:219,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].diff(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].rotate(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:238,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.math.Vector2D:239,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.math.Vector2D:240,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:133,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:282,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].maxAngleToBisector(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:198"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromCornerAwayFromArms(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].normalize()"
    - "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].maxAngleToBisector(double)"
    - "[org.locationtech.jts.math.Vector2D].rotate(double)"
    - "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - "[org.locationtech.jts.math.Vector2D].angleTo(org.locationtech.jts.math.Vector2D)"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:215,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:218,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:218,1"
      Dst: "[org.locationtech.jts.math.Vector2D].normalize()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:220,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angle(org.locationtech.jts.math.Vector2D)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].maxAngleToBisector(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:224,1"
      Dst: "[org.locationtech.jts.math.Vector2D].rotate(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:226,1"
      Dst: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:232,1"
      Dst: "[org.locationtech.jts.math.Vector2D].angleTo(org.locationtech.jts.math.Vector2D)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:233,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:236,1"
      Dst: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isInsideCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:241,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].isFlat(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:249,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:250,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:265,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].rotateToQuadrant(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:285,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].orientCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:304,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].normalizedOffset(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].normalize()"
    - "[org.locationtech.jts.math.Vector2D].add(org.locationtech.jts.math.Vector2D)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:324,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:324,1"
      Dst: "[org.locationtech.jts.math.Vector2D].normalize()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:326,1"
      Dst: "[org.locationtech.jts.math.Vector2D].add(org.locationtech.jts.math.Vector2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex].displaceFromFlatCorner(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - "[org.locationtech.jts.math.Vector2D].normalize()"
    - "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:333,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:333,1"
      Dst: "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:334,1"
      Dst: "[org.locationtech.jts.math.Vector2D].normalize()"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:334,1"
      Dst: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - Src: "org.locationtech.jtstest.testbuilder.topostretch.StretchedVertex:335,1"
      Dst: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedCDATA].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CDATA].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedCDATA:82,1"
      Dst: "[org.jdom2.CDATA].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedCDATA].getLine()"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedCDATA].getColumn()"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedCDATA].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedCDATA].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedCDATA"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.JComboBox].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 136
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:132,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:84,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:88,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:97,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:100,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:100,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:100,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:104,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:107,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:112,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:119,1"
      Dst: "[javax.swing.JComboBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:130,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:137,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getFunctionRegistry()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].populate(org.locationtech.jtstest.function.DoubleKeyMap)"
    - "[java.awt.GridLayout].setRows(int)"
    - "[java.awt.GridLayout].setColumns(int)"
    - "[java.awt.FlowLayout].<init>()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - "[javax.swing.DefaultComboBoxModel].<init>(java.lang.Object[])"
    - "[javax.swing.JComboBox].setModel(javax.swing.ComboBoxModel)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].initLabels(javax.swing.JLabel[])"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[javax.swing.BorderFactory].createEmptyBorder()"
    - "[javax.swing.AbstractButton].setContentAreaFilled(boolean)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.JComponent].setVisible(boolean)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$4].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].addGeometryFunctionListener(org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].hideAllParams(javax.swing.JComponent[],javax.swing.JLabel[])"
    functionUses: 0
    ICount: 252
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:142,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getFunctionRegistry()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:145,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].populate(org.locationtech.jtstest.function.DoubleKeyMap)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:148,1"
      Dst: "[java.awt.GridLayout].setRows(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:149,1"
      Dst: "[java.awt.GridLayout].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:150,1"
      Dst: "[java.awt.FlowLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:153,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:154,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:155,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:158,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:158,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:159,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:160,1"
      Dst: "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:164,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:164,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:165,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:166,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:167,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:168,1"
      Dst: "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:174,1"
      Dst: "[javax.swing.DefaultComboBoxModel].<init>(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:175,1"
      Dst: "[javax.swing.JComboBox].setModel(javax.swing.ComboBoxModel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].initLabels(javax.swing.JLabel[])"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:189,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:200,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:201,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:204,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:205,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:228,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$2].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:246,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:247,1"
      Dst: "[javax.swing.AbstractButton].setContentAreaFilled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:248,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:255,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:271,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:274,1"
      Dst: "[javax.swing.JComponent].setVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$4].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:295,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].addGeometryFunctionListener(org.locationtech.jtstest.testbuilder.event.GeometryFunctionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:297,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].hideAllParams(javax.swing.JComponent[],javax.swing.JLabel[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].initLabels(javax.swing.JLabel[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.JLabel[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:306"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:304,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:305,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:311,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearResultButton_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearFunction()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:316,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearFunction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setCurrentFunction(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:444,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setCurrentFunction(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setCurrentFunction(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].fireFunctionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].fireFunctionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent].<init>(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent:29,1"
      Dst: "[java.util.EventObject].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].fireFunctionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener].functionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:522"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:518,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:520,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:520,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener].functionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getMetaFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isMetaFunctionEnabled()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionRepeated()"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getInteger(javax.swing.JTextField,java.lang.Integer)"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionEach()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachA()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachB()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean,boolean)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:320,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isMetaFunctionEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:323,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionRepeated()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:324,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getInteger(javax.swing.JTextField,java.lang.Integer)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:324,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:325,1"
      Dst: "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:327,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionEach()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachA()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachB()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:328,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunctionFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:149,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunctionFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isMetaFunctionEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].isVisible()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:335,1"
      Dst: "[java.awt.Component].isVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionRepeated()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:339,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getInteger(javax.swing.JTextField,java.lang.Integer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 2
    argTypes:
    - "javax.swing.JTextField"
    - "java.lang.Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:148,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:149,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:149,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:154,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:157,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].hasRepeatableArg(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:40,1"
      Dst: "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].hasRepeatableArg(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].hasRepeatableArg(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:113,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction:115,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionEach()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:341"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:342,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachA()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:345,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachB()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:348,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isMetaFunctionEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].isVisible()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:335,1"
      Dst: "[java.awt.Component].isVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionRepeated()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:339,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionEach()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:341"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:342,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachA()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:345,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachB()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:348,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearExtended()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:351,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setCurrentFunction(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].fireFunctionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].fireFunctionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getMetaFunction()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getMetaFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getMetaFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isMetaFunctionEnabled()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionRepeated()"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getInteger(javax.swing.JTextField,java.lang.Integer)"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionEach()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachA()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachB()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean,boolean)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:320,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isMetaFunctionEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:323,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionRepeated()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:324,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getInteger(javax.swing.JTextField,java.lang.Integer)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:324,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:325,1"
      Dst: "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:327,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionEach()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachA()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isEachB()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:328,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:370,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:370,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.FunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunction()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunctionParams()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunctionParams()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:83,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:32"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:31"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:35"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:32,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:36,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:37,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:69,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:55"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:53,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:55,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:56,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:58,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.StringUtil].capitalize(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:398,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].capitalize(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - "[java.lang.System].gc()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:91,1"
      Dst: "[java.lang.System].gc()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:196,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:209,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:210,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.Object"
    - "org.locationtech.jts.util.Stopwatch"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:111,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].getTime()"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:76,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTime()"
    - Src: "org.locationtech.jts.util.Stopwatch:77,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTime()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:70,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:62,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(double)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Stopwatch:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Stopwatch:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Stopwatch:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Stopwatch:83,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jts.util.Memory].usedTotalString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:173,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:175,1"
      Dst: "[org.locationtech.jts.util.Memory].usedTotalString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:190,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:123,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:124,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:483"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:482"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Window].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:216,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:216,1"
      Dst: "[java.awt.Window].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:311,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Timer].stop()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController$2].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - "[javax.swing.Timer].setInitialDelay(int)"
    - "[javax.swing.Timer].start()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:189,1"
      Dst: "[javax.swing.Timer].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController$2].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:191,1"
      Dst: "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:205,1"
      Dst: "[javax.swing.Timer].setInitialDelay(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:206,1"
      Dst: "[javax.swing.Timer].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController$2].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$2:191,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:370,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:370,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].functionChanged(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].saveParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].functionDescriptionHTML(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].updateParameters(org.locationtech.jtstest.geomfunction.GeometryFunction,javax.swing.JComponent[],javax.swing.JLabel[])"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].recallParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:375,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].saveParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:377,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:377,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:378,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].functionDescriptionHTML(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:378,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:380,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].updateParameters(org.locationtech.jtstest.geomfunction.GeometryFunction,javax.swing.JComponent[],javax.swing.JLabel[])"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:381,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].recallParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:383,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:385,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].saveParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:395,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:396,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.swing.text.JTextComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:174,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].functionDescriptionHTML(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getSignature()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getDescription()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:150,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:150,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:150,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getSignature()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:150,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:151,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getDescription()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].updateParameters(org.locationtech.jtstest.geomfunction.GeometryFunction,javax.swing.JComponent[],javax.swing.JLabel[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "javax.swing.JComponent[]"
    - "javax.swing.JLabel[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].numNonGeomParams(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].firstScalarParamIndex(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setVisible(boolean)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setToolTipText(javax.swing.JComponent,org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:411"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:410"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:400,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].numNonGeomParams(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:401,1"
      Dst: "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].firstScalarParamIndex(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:405,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:405,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:407,1"
      Dst: "[javax.swing.JComponent].setVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:409,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setToolTipText(javax.swing.JComponent,org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].numNonGeomParams(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:436"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:435"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:430"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:431,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:433,1"
      Dst: "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:106,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setToolTipText(javax.swing.JComponent,org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.swing.JComponent"
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:425"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:424"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:422,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:425,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].recallParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:389"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:389,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:390,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:391,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].recallParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:389"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:389,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:390,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:391,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].saveParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:395,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:396,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].updateParameters(org.locationtech.jtstest.geomfunction.GeometryFunction,javax.swing.JComponent[],javax.swing.JLabel[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "javax.swing.JComponent[]"
    - "javax.swing.JLabel[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].numNonGeomParams(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].firstScalarParamIndex(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setVisible(boolean)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setToolTipText(javax.swing.JComponent,org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:411"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:410"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:400,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].numNonGeomParams(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:401,1"
      Dst: "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].firstScalarParamIndex(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:405,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:405,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:407,1"
      Dst: "[javax.swing.JComponent].setVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:409,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setToolTipText(javax.swing.JComponent,org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].hideAllParams(javax.swing.JComponent[],javax.swing.JLabel[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JComponent[]"
    - "javax.swing.JLabel[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setVisible(boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:415,1"
      Dst: "[javax.swing.JComponent].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setToolTipText(javax.swing.JComponent,org.locationtech.jtstest.geomfunction.GeometryFunction,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.swing.JComponent"
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:425"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:424"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:422,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:423,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:425,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].numNonGeomParams(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:436"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:435"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:430"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:431,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:433,1"
      Dst: "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:439"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:440,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setCurrentFunction(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:444,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].setCurrentFunction(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getFunctionParams()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getParamValue(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:450,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:454,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getParamValue(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:455,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getParamValue(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.JComboBox,java.lang.Object[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:463"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:461,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:462,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:462,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:464,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:469,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.JComboBox,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:439"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:440,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.swing.text.JTextComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:174,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.JComboBox,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "javax.swing.JComboBox"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].getSelectedIndex()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:179,1"
      Dst: "[javax.swing.JComboBox].getSelectedIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getParamValue(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.JComboBox,java.lang.Object[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:463"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:461,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:462,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:462,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:464,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:469,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.JComboBox,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:483"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:482"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isAutoExecute()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:488,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].removeSpatialFunctionPanelListener(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.Vector].clone()"
    - "[java.util.Vector].removeElement(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:500"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:504"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:500"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:504"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:500,1"
      Dst: "[java.util.Vector].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:501,1"
      Dst: "[java.util.Vector].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:502,1"
      Dst: "[java.util.Vector].removeElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].addSpatialFunctionPanelListener(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>(int)"
    - "[java.util.Vector].clone()"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:508"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:513"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:512"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:508,1"
      Dst: "[java.util.Vector].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:508,1"
      Dst: "[java.util.Vector].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:509,1"
      Dst: "[java.util.Vector].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:510,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].fireFunctionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener].functionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:522"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:518,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:520,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:520,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelListener].functionExecuted(org.locationtech.jtstest.testbuilder.event.SpatialFunctionPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].access$000(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel,org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].functionChanged(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].functionChanged(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].functionChanged(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].saveParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].functionDescriptionHTML(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].updateParameters(org.locationtech.jtstest.geomfunction.GeometryFunction,javax.swing.JComponent[],javax.swing.JLabel[])"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].recallParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:375,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].saveParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:377,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:377,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:378,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].functionDescriptionHTML(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:378,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:380,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].updateParameters(org.locationtech.jtstest.geomfunction.GeometryFunction,javax.swing.JComponent[],javax.swing.JLabel[])"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:381,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].recallParameter(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:383,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:385,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.NoninvertibleTransformationException].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.NoninvertibleTransformationException"
    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: "org.locationtech.jts.geom.util.NoninvertibleTransformationException:26,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.NoninvertibleTransformationException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.util.NoninvertibleTransformationException"
    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: "org.locationtech.jts.geom.util.NoninvertibleTransformationException:30,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].covers(org.locationtech.jts.geom.prep.PreparedPolygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonCovers"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].covers(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:41,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].covers(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonCovers"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:52,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].covers(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonCovers"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:64,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonCovers"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:52,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].covers(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonCovers"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:64,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonCovers].fullTopologicalPredicate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonCovers"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:76,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonCovers:76,1"
      Dst: "[org.locationtech.jts.geom.Geometry].covers(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygon"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:38,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geom.prep.BasicPreparedGeometry"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format$EscapeStrategy8Bits].<init>()"
    functionSourceFile: "org.jdom2.output.Format$EscapeStrategy8Bits"
    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: "org.jdom2.output.Format$EscapeStrategy8Bits:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format$EscapeStrategy8Bits].shouldEscape(char)"
    functionSourceFile: "org.jdom2.output.Format$EscapeStrategy8Bits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format$EscapeStrategy8Bits:118"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format$EscapeStrategy8Bits:117"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.Format$EscapeStrategy8Bits].<init>(org.jdom2.output.Format$1)"
    functionSourceFile: "org.jdom2.output.Format$EscapeStrategy8Bits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.Format$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.Format$EscapeStrategy8Bits].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format$EscapeStrategy8Bits:115,1"
      Dst: "[org.jdom2.output.Format$EscapeStrategy8Bits].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>(org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:60,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 13
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:72"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:73,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 7
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:93"
        BranchSideFuncs:
        - "locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:97"
        BranchSideFuncs:
        - "locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:96"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:91,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:99,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:100,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 7
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:93"
        BranchSideFuncs:
        - "locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:97"
        BranchSideFuncs:
        - "locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:96"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:91,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:99,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:100,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.algorithm.PointLocator].updateLocationInfo(int)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 62
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:116"
        BranchSideFuncs:
        - "locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:136"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:144"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:144"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:142"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:110,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:114,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:114,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].updateLocationInfo(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:117,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:120,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:124,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:125,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:137,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:138,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:139,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:141,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 25
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].updateLocationInfo(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:149"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateOnPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:156,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:157,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.PointLocation].isOnLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 3
    ICount: 32
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:166"
        BranchSideFuncs:
        - "getCoordinateSequence()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:170"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals(java.lang.Object)"
        - "size()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:169"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:174"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:173"
        BranchSideFuncs:
        - "isOnLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:170"
        BranchSideFuncs:
        - "isInBoundary(int)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:169"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:170"
        BranchSideFuncs:
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:165,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:165,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:167,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:168,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:169,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:170,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:171,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:174,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].isOnLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 9
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:184"
        BranchSideFuncs:
        - "locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:183,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:183,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:185,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:185,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 10
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 3
    ICount: 24
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:191"
        BranchSideFuncs:
        - "getExteriorRing()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:197"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:204"
        BranchSideFuncs:
        - "locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:197"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:190,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:192,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:194,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygonRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:198,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:199,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].createFixed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].initFixed()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].initFixed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].create(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:37,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.LayerList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:48,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:176,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:48,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].initFixed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:55,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: "org.locationtech.jtstest.testbuilder.model.LayerList:60,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:82,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:83,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: "org.locationtech.jtstest.testbuilder.model.LayerList:60,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:41,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].createAOI(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].createAOI(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].createAOI(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:73,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:75,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:155,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].findComponents(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:67,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].findComponents(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].findComponents(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].findComponents(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:83,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:83,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].findComponents(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:85,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:92,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:158,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160,1"
      Dst: "[java.util.Vector].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:162,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponents(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].extractComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].getGeometry(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter:28,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter:29,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter:30,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].getGeometry(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:36,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].getGeometry(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:47,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:48,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:50,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:51,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:146,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:147,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].extractLocationGeometry(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractLocationGeometry(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:112,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:115,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:117,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:120,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:41,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].findComponents(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:67,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].findComponents(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractLocationGeometry(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:125,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:126,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:126,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:127,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:128,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].extractLocationGeometry(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractLocationGeometry(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:112,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:115,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:117,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:120,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractLocationGeometry(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:125,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:126,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:126,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:127,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:128,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(int,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:135,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:138,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].copy(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:145,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].copy()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:41,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:41,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:41,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].copy()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].copy()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.LayerStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:150,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:154,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].isTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:158,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:159,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].isBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:163,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:164,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:164,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].addTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(int,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:168,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].addBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:172,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:176,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].moveUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].get(int)"
    - "[java.util.List].set(int,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:180,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:182,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:183,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].moveDown(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].set(int,java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:188,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:190,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:191,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:192,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:198,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge$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: "org.locationtech.jts.operation.overlayng.OverlayEdge$1:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].compare(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge$1:66,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge$1:66,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].compare(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge$1:63,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].compare(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].compare(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge$1:66,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge$1:66,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].<init>()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    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: "org.locationtech.jts.util.Assert:19,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:60,1"
      Dst: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].equals(java.lang.Object,java.lang.Object,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.NegateFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ElementFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.LineSegment].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].equals(java.lang.Object)"
    - "[org.jdom2.filter.OrFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ClassFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.jdom2.filter.AndFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Edge].equals(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.tri.TriEdge].equals(java.lang.Object)"
    - "[org.jdom2.filter.AttributeFilter].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].equals(java.lang.Object)"
    - "[org.jdom2.Namespace].equals(java.lang.Object)"
    - "[org.jdom2.Content:org.jdom2.Document:org.jdom2.filter.ContentFilter:org.jdom2.filter.TextOnlyFilter:org.locationtech.jts.geom.PrecisionModel:org.locationtech.jts.geom.util.AffineTransformation:org.locationtech.jts.index.strtree.Interval:org.locationtech.jts.math.Vector2D:org.locationtech.jts.math.Vector3D:org.locationtech.jts.operation.overlayng.EdgeKey].equals(java.lang.Object)"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.Object].equals(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()"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:78"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.util.Assert:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:74"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:74,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Assert:75,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Assert:76,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:76,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE$1].<init>()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE$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: "org.jdom2.output.support.WalkerPRESERVE$1:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE$1"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 191
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE$1"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "org.jdom2.Content"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 195
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerPRESERVE$1:82,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE$1].remove()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE$1"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerPRESERVE$1:87,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:68,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>(int)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:78,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].setEncodeCRS(boolean)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].setForceCCW(boolean)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:110,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:112,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:114,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:117,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:131,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:132,1"
      Dst: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:133,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$1].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$2].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.util.ArrayList].<init>(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.ArrayList].add(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)"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].createCRS(int)"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:138,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:139,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:144,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:145,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:148,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$1].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:158,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:162,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$2].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:173,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:176,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:181,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:192,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:201,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:204,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:204,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:204,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:214,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:214,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].createCRS(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 31
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].formatOrdinate(double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:298,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:300,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:301,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:308,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:308,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].formatOrdinate(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:312,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:314,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:328,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].formatOrdinate(double)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].pow(double,double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Long].toString(long)"
    - "[java.lang.Double].toString(double)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:334,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:334,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:335,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:338,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:340,1"
      Dst: "[java.lang.Double].toString(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$1].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$1:148,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$2].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$2:162,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.io.geojson.OrientationTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:67,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:68,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:70,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:71,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:72,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:72,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:75,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:76,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:76,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.io.geojson.OrientationTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LinearRing].reverse()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:93,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:93,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:97,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].reverse()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jts.geom.LinearRing].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].reverse()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:138,1"
      Dst: "[org.locationtech.jts.geom.LineString].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:192,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$3].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$4].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:234,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:237,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:238,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:237,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:239,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$3].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:239,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:246,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:247,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:249,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$4].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$3].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$3:239,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$4].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$4:249,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.util.ArrayList].<init>(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$5].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$6].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:271"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:270"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:263,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:263,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:265,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:269,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:269,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:274,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:273,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:275,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$5].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:284,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:285,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$6].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$5].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$5:275,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$6].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$6:285,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.geojson.OrientationTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:44,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:45,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:45,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:48,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:51,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].createCRS(int)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:222,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:223,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONObject"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.io.Writer].write(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[org.json.simple.JSONObject].escape(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONObject:48"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:53"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:52"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:57"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:69"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:68"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONObject:58"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONObject:61"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONObject:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONObject:49,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.json.simple.JSONObject:54,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.json.simple.JSONObject:56,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONObject:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.json.simple.JSONObject:62,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "org.json.simple.JSONObject:64,1"
      Dst: "[org.json.simple.JSONObject].escape(java.lang.String)"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.json.simple.JSONObject:67,1"
      Dst: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:131,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:132,1"
      Dst: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:133,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$1].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$2].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.util.ArrayList].<init>(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.ArrayList].add(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)"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].createCRS(int)"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:138,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:139,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:144,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:145,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:148,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$1].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:158,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:162,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$2].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:173,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:176,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:181,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:192,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:201,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:204,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:204,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].create(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:204,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:210,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:214,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:214,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].createCRS(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 31
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].createCRS(int)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:222,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:223,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$3].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$4].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:234,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:237,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:238,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:237,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:239,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$3].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:239,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:246,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:247,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:249,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$4].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.util.ArrayList].<init>(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$5].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter$6].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:271"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:270"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:263,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:263,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:265,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:269,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].makeJsonAware(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:269,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:274,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:273,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:275,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$5].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:284,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:285,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter$6].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].getJsonString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].formatOrdinate(double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:298,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:300,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:301,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:308,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:308,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].formatOrdinate(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:312,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:314,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:328,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].formatOrdinate(double)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].pow(double,double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Long].toString(long)"
    - "[java.lang.Double].toString(double)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.GeoJsonWriter:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.GeoJsonWriter:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:334,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:334,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:335,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:338,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:340,1"
      Dst: "[java.lang.Double].toString(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].contains(org.locationtech.jts.geom.prep.PreparedPolygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonContains"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygonContains].contains(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:43,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].contains(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonContains"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:53,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].contains(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonContains"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:64,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonContains"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:53,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].contains(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonContains"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:64,1"
      Dst: "[org.locationtech.jts.geom.prep.AbstractPreparedPolygonContains].eval(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonContains].fullTopologicalPredicate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonContains"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].contains(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:76,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonContains:76,1"
      Dst: "[org.locationtech.jts.geom.Geometry].contains(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygon"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:38,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalTargetException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "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: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalTargetException:79,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalTargetException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalTargetException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalTargetException:94,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:69,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:85,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:87,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:89,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:92,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:85,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:87,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:89,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:92,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:104,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].isEmpty()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:135"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 7
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:147,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 6
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:171"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:180"
        BranchSideFuncs:
        - "findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:163,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:172,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:175,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:180,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 5
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].queryEnvelope()"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].getNode()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:196,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:197,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].queryEnvelope()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:197,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:198,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].getNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 251
    functionDepth: 3
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].setLeft(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].setRight(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 1
    ICount: 60
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:290"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:289"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:261"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:271"
        BranchSideFuncs:
        - "increment()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:270"
        BranchSideFuncs:
        - "splitValue(boolean)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:282"
        BranchSideFuncs:
        - "getRight()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:286"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:285"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:295"
        BranchSideFuncs:
        - "setLeft(org.locationtech.jts.index.kdtree.KdNode)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:294"
        BranchSideFuncs:
        - "setRight(org.locationtech.jts.index.kdtree.KdNode)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:262,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:262,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:267,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:271,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:280,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:283,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:291,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:293,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].setLeft(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:295,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].setRight(org.locationtech.jts.index.kdtree.KdNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 27
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 307
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.kdtree.KdNodeVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdTree$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].push(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    - "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 3
    ICount: 49
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:328"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
        - "isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:325"
        BranchSideFuncs:
        - "getLeft()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:350"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:339"
        BranchSideFuncs:
        - "visit(org.locationtech.jts.index.kdtree.KdNode)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:338"
        BranchSideFuncs:
        - "isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:347"
        BranchSideFuncs:
        - "getRight()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:308,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:317,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:319,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:328,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:330,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:331,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:332,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:341,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:381,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:382,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$1].<init>(org.locationtech.jts.index.kdtree.KdTree,java.util.List)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:395,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$1].<init>(org.locationtech.jts.index.kdtree.KdTree,java.util.List)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:395,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$1].<init>(org.locationtech.jts.index.kdtree.KdTree,java.util.List)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$1"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdTree"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree$1:395,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 307
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.kdtree.KdNodeVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdTree$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].push(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    - "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 3
    ICount: 49
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:328"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
        - "isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:325"
        BranchSideFuncs:
        - "getLeft()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:350"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:339"
        BranchSideFuncs:
        - "visit(org.locationtech.jts.index.kdtree.KdNode)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:338"
        BranchSideFuncs:
        - "isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:347"
        BranchSideFuncs:
        - "getRight()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:308,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:317,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:319,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:328,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:330,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:331,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:332,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:341,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$1].<init>(org.locationtech.jts.index.kdtree.KdTree,java.util.List)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:395,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$1].<init>(org.locationtech.jts.index.kdtree.KdTree,java.util.List)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:395,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 410
    functionDepth: 3
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdNode].isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 1
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:427"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:418"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:417"
        BranchSideFuncs:
        - "isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:422"
        BranchSideFuncs:
        - "getLeft()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:421"
        BranchSideFuncs:
        - "getRight()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:424"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:415,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:415,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:418,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:420,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:422,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:224"
        BranchSideFuncs:
        - "splitValue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:225,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:92"
        BranchSideFuncs:
        - "getX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:91"
        BranchSideFuncs:
        - "getY()"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:92,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].depth()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:436,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:442"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:443,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:443,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].depthNode(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:444,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].size()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:454,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:461"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:460"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:461,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:461,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:462,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:461"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:460"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:461,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:461,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].sizeNode(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:462,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.JDOMParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.input.JDOMParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.JDOMParseException].<init>(java.lang.String,java.lang.Throwable,org.jdom2.Document)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.JDOMParseException:90,1"
      Dst: "[org.jdom2.input.JDOMParseException].<init>(java.lang.String,java.lang.Throwable,org.jdom2.Document)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.JDOMParseException].<init>(java.lang.String,java.lang.Throwable,org.jdom2.Document)"
    functionSourceFile: "org.jdom2.input.JDOMParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    - "org.jdom2.Document"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.JDOMParseException:108,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.JDOMParseException].getPartialDocument()"
    functionSourceFile: "org.jdom2.input.JDOMParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Document"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.JDOMParseException].getPublicId()"
    functionSourceFile: "org.jdom2.input.JDOMParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getCause()"
    - "[org.xml.sax.SAXParseException].getPublicId()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.JDOMParseException:130"
      Branch Sides:
      - BranchSide: "org.jdom2.input.JDOMParseException:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.JDOMParseException:130,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "org.jdom2.input.JDOMParseException:130,1"
      Dst: "[org.xml.sax.SAXParseException].getPublicId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.JDOMParseException].getSystemId()"
    functionSourceFile: "org.jdom2.input.JDOMParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getCause()"
    - "[org.xml.sax.SAXParseException].getSystemId()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.JDOMParseException:142"
      Branch Sides:
      - BranchSide: "org.jdom2.input.JDOMParseException:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.JDOMParseException:142,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "org.jdom2.input.JDOMParseException:142,1"
      Dst: "[org.xml.sax.SAXParseException].getSystemId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.JDOMParseException].getLineNumber()"
    functionSourceFile: "org.jdom2.input.JDOMParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getCause()"
    - "[org.xml.sax.SAXParseException].getLineNumber()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.JDOMParseException:156"
      Branch Sides: []
    Callsites:
    - Src: "org.jdom2.input.JDOMParseException:156,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "org.jdom2.input.JDOMParseException:156,1"
      Dst: "[org.xml.sax.SAXParseException].getLineNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.JDOMParseException].getColumnNumber()"
    functionSourceFile: "org.jdom2.input.JDOMParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getCause()"
    - "[org.xml.sax.SAXParseException].getColumnNumber()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.JDOMParseException:170"
      Branch Sides: []
    Callsites:
    - Src: "org.jdom2.input.JDOMParseException:170,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "org.jdom2.input.JDOMParseException:170,1"
      Dst: "[org.xml.sax.SAXParseException].getColumnNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.io.OrdinateFormat"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:75,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].<init>()"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:83,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.OrdinateFormat:84,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:92,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.OrdinateFormat:93,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].createFormat(int)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.text.DecimalFormat"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.NumberFormat].getInstance(java.util.Locale)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.text.DecimalFormat].applyPattern(java.lang.String)"
    - "[java.text.DecimalFormat].setMaximumFractionDigits(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:98,1"
      Dst: "[java.text.NumberFormat].getInstance(java.util.Locale)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:105,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:107,1"
      Dst: "[java.text.DecimalFormat].applyPattern(java.lang.String)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:108,1"
      Dst: "[java.text.DecimalFormat].setMaximumFractionDigits(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:34,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].size()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:48,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].getEdge()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.noding.NodedSegmentString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.SegmentNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getSegmentOctant(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:61,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:62,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:65,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:72,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:86,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:87,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:87,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addCollapsedNodes()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromInsertedNodes(java.util.List)"
    - "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromExistingVertices(java.util.List)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 16
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:110"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "next()"
        - "add(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:100,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:102,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromInsertedNodes(java.util.List)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:103,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromExistingVertices(java.util.List)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:106,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:106,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:107,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:107,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:108,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromExistingVertices(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:127"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:117"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:118,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:119,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:124,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].findCollapsesFromInsertedNodes(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.noding.SegmentNodeList].findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:150"
        BranchSideFuncs:
        - "findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:148"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:139,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:141,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:142,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:144,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:146,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:146,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].findCollapseIndex(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,int[])"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:156"
        BranchSideFuncs:
        - "isInterior()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:155,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:158,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addSplitEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - "[org.locationtech.jts.noding.SegmentNodeList].addCollapsedNodes()"
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:198"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
        - "createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:181,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:182,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addCollapsedNodes()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:184,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:186,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:187,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:189,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:194,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].checkSplitEdgesCorrectness(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[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.util.List].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:207,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:210,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:211,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:212,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:213,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:213,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:213,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:213,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:213,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:215,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:216,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdge(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 228
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.SegmentString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:229,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:230,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:230,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionUses: 2
    ICount: 56
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:249"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-1"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "isInterior()"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:270"
        BranchSideFuncs:
        - "copy()"
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:248,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:250,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:260,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:260,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:267,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].getSplitCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.noding.SegmentNodeList].addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 16
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:298"
        BranchSideFuncs:
        - "next()"
        - "addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:297"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:286,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:288,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addEndpoints()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:290,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:292,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:293,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:295,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:298,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].addEdgeCoordinates(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 302
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.noding.SegmentNode"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:303,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].createSplitEdgePts(org.locationtech.jts.noding.SegmentNode,org.locationtech.jts.noding.SegmentNode)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:304,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentNode].print(java.io.PrintStream)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNodeList:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNodeList:313"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:309,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:310,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:310,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:311,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:312,1"
      Dst: "[org.locationtech.jts.noding.SegmentNode].print(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNodeList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.noding.SegmentNodeList:79,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNode].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].print(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNode:84,1"
      Dst: "[java.io.PrintStream].print(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LinearRingNode].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LinearRingNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jtstest.testbuilder.GeometryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LineStringNode].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LinearRingNode:422,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LineStringNode].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LinearRingNode].<init>(org.locationtech.jts.geom.LinearRing,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LinearRingNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.lang.String"
    - "org.locationtech.jtstest.testbuilder.GeometryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LineStringNode].<init>(org.locationtech.jts.geom.LineString,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LinearRingNode:426,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LineStringNode].<init>(org.locationtech.jts.geom.LineString,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LinearRingNode].getIcon()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LinearRingNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.ImageIcon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LinearRingNode:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LinearRingNode:429"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedEntityRef:77,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedEntityRef:92,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedEntityRef:109,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].getLine()"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].getColumn()"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedEntityRef].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedEntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOM2Navigator].<init>()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOM2Navigator"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOM2Navigator:63,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChain].<init>(org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChain"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChain:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChain].computeIntersections(org.locationtech.jts.geomgraph.index.MonotoneChain,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChain"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.MonotoneChain"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChain:29,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].computeIntersectsForChain(int,org.locationtech.jts.geomgraph.index.MonotoneChainEdge,int,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$NONSingleton].values()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$NONSingleton"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders$NONSingleton[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders$NONSingleton:103,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$NONSingleton].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$NONSingleton"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders$NONSingleton"
    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: "org.jdom2.input.sax.XMLReaders$NONSingleton:103,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$NONSingleton].<init>(java.lang.String,int)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$NONSingleton"
    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)"
    - "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders$NONSingleton:108,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "org.jdom2.input.sax.XMLReaders$NONSingleton:109,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - Src: "org.jdom2.input.sax.XMLReaders$NONSingleton:111,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - Src: "org.jdom2.input.sax.XMLReaders$NONSingleton:112,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$NONSingleton].supply()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$NONSingleton"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.xml.parsers.SAXParserFactory"
    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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$NONSingleton].validates()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$NONSingleton"
    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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].<init>()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    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: "org.locationtech.jts.shape.fractal.HilbertCode:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:65,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:66,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    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: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].maxOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:78,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:79,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    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: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].level(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:90,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:92,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:65,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:66,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    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: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].encode(int,int,int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    functionUses: 1
    ICount: 134
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:119,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:188"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:188"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].decode(int,int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].deinterleave(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].prefixScan(long)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:203,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:204,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:208,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].deinterleave(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:214,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].prefixScan(long)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    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: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:188"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].deinterleave(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].prefixScan(long)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].prefixScan(long)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].deinterleave(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.internal.ReflectionConstructor].<init>()"
    functionSourceFile: "org.jdom2.internal.ReflectionConstructor"
    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: "org.jdom2.internal.ReflectionConstructor:67,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.internal.ReflectionConstructor].construct(java.lang.String,java.lang.Class)"
    functionSourceFile: "org.jdom2.internal.ReflectionConstructor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ClassCastException].<init>(java.lang.String)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.Class].cast(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 83
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ReflectionConstructor:82"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ReflectionConstructor:85"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ReflectionConstructor:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ReflectionConstructor:81,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "org.jdom2.internal.ReflectionConstructor:82,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "org.jdom2.internal.ReflectionConstructor:83,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.internal.ReflectionConstructor:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.internal.ReflectionConstructor:83,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.jdom2.internal.ReflectionConstructor:83,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.internal.ReflectionConstructor:83,1"
      Dst: "[java.lang.ClassCastException].<init>(java.lang.String)"
    - Src: "org.jdom2.internal.ReflectionConstructor:85,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "org.jdom2.internal.ReflectionConstructor:86,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "org.jdom2.internal.ReflectionConstructor:87,1"
      Dst: "[java.lang.Class].cast(java.lang.Object)"
    - Src: "org.jdom2.internal.ReflectionConstructor:89,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.jdom2.internal.ReflectionConstructor:93,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].contains(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.predicate.RectangleContains].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].contains(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:48,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:49,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].contains(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:59,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:60,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].contains(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:73"
        BranchSideFuncs:
        - "isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:66,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:74,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry:org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:83"
        BranchSideFuncs:
        - "isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:82"
        BranchSideFuncs:
        - "isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:84"
        BranchSideFuncs:
        - "isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:83"
        BranchSideFuncs:
        - "isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:85"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:91"
        BranchSideFuncs:
        - "isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
        - "getGeometryN(int)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:85"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:83,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:84,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:88,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:96,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:96,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 2
    ICount: 26
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:112"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:112"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:112"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:112,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:113,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:114,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:115,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:135"
        BranchSideFuncs:
        - "getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
        - "isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:124"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "<init>()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:125,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:126,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:132,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 1
    ICount: 38
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:150"
        BranchSideFuncs:
        - "isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:155"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:153"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:168"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:158"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:146,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:147,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:151,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:152,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:59,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:60,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].contains(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:73"
        BranchSideFuncs:
        - "isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:66,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:74,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry:org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:83"
        BranchSideFuncs:
        - "isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:82"
        BranchSideFuncs:
        - "isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:84"
        BranchSideFuncs:
        - "isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:83"
        BranchSideFuncs:
        - "isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:85"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:91"
        BranchSideFuncs:
        - "isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
        - "getGeometryN(int)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:85"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:83,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:84,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:88,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isContainedInBoundary(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:96,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:96,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 2
    ICount: 26
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:112"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:112"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:112"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:111"
        BranchSideFuncs:
        - "getMinX()"
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:112,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:113,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:114,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:115,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineStringContainedInBoundary(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:135"
        BranchSideFuncs:
        - "getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
        - "isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:124"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "<init>()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:125,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:126,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:132,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.predicate.RectangleContains].isLineSegmentContainedInBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.RectangleContains"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 1
    ICount: 38
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:150"
        BranchSideFuncs:
        - "isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:155"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:153"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:168"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:158"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.RectangleContains:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.RectangleContains:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:146,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:147,1"
      Dst: "[org.locationtech.jts.operation.predicate.RectangleContains].isPointContainedInBoundary(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:151,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:152,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.predicate.RectangleContains:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$3].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$3:137,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$3].run()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].access$300(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog$Executable].execute()"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].access$402(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.Exception)"
    - "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable)"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].access$502(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$3:141,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$300(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$3:141,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog$Executable].execute()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$3:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$402(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.Exception)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$3:144,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$3:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$502(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$300(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.BusyDialog$Executable"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$402(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Exception"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    - "java.lang.Exception"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$502(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    - "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].create(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:445,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:452,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:454,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:455,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:456,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:457,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:458,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:459,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:459,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:452,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:454,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:455,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:456,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:457,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:458,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:459,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:459,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].getToolTipText(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getNameSummary()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:463,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getNameSummary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getNameSummary()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:62,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:63,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:30,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].update(javax.swing.JPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JPanel"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:469"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:472"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:471"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:482"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:481"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:469,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:469,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:470,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:473,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:482,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:483,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:483,1"
      Dst: "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:483,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.awt.PointShapeFactory$Triangle].<init>()"
    functionSourceFile: "org.locationtech.jts.awt.PointShapeFactory$Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Triangle:202,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.PointShapeFactory$Triangle].<init>(double)"
    functionSourceFile: "org.locationtech.jts.awt.PointShapeFactory$Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Triangle:212,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.PointShapeFactory$Triangle].createPoint(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jts.awt.PointShapeFactory$Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Triangle:224,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Triangle:225,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Triangle:225,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Triangle:225,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Triangle:226,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].<init>()"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.SlimJDOMFactory].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:78,1"
      Dst: "[org.jdom2.SlimJDOMFactory].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].<init>(boolean)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    - "[org.jdom2.StringBin].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:89,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    - Src: "org.jdom2.SlimJDOMFactory:71,1"
      Dst: "[org.jdom2.StringBin].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].clearCache()"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:98,1"
      Dst: "[org.jdom2.StringBin].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].<init>()"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.StringBin:124,1"
      Dst: "[org.jdom2.StringBin].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].<init>(int)"
    functionSourceFile: "org.jdom2.StringBin"
    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: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:132"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:136"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:140"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:139"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:142"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:146"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:131,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.StringBin:133,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.jdom2.SlimJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:103"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:103,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:103,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.StringBin].compact(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    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: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.StringBin:374,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "org.jdom2.StringBin:374,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].compareTo(java.lang.String)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:165"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:227"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:226"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:167"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:169"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:168"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:169"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:174"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:173"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:175"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:177"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:178"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:203"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:181"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:181"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:185"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:188"
      Branch Sides: []
    - Branch String: "org.jdom2.StringBin:204"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:221"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:204"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:221"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:207"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:210"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:167,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:174,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 24
  - functionName: "[org.jdom2.StringBin].rehash()"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:335"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:361"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:360"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:336"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:339"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:340"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:329"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:328"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:341"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:344"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:348"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:352"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:351"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:352"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:356"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:345,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:353,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    functionSourceFile: "org.jdom2.internal.ArrayCopy"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ArrayCopy:82"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ArrayCopy:81"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ArrayCopy:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.jdom2.internal.ArrayCopy:82,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:81,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:174,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    - "[org.jdom2.Attribute].setName(java.lang.String)"
    - "[org.jdom2.Attribute].setValue(java.lang.String)"
    - "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:219,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    - Src: "org.jdom2.Attribute:220,1"
      Dst: "[org.jdom2.Attribute].setName(java.lang.String)"
    - Src: "org.jdom2.Attribute:221,1"
      Dst: "[org.jdom2.Attribute].setValue(java.lang.String)"
    - Src: "org.jdom2.Attribute:222,1"
      Dst: "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - Src: "org.jdom2.Attribute:223,1"
      Dst: "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CloneBase].<init>()"
    functionSourceFile: "org.jdom2.CloneBase"
    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: "org.jdom2.CloneBase:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].setName(java.lang.String)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.Verifier].checkAttributeName(java.lang.String)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Attribute:348"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:352"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Attribute:351"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Attribute:353"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:356"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Attribute:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Attribute:349,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.Attribute:352,1"
      Dst: "[org.jdom2.Verifier].checkAttributeName(java.lang.String)"
    - Src: "org.jdom2.Attribute:354,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].checkAttributeName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:407"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:412"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:407,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Verifier:412,1"
      Dst: "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].checkJDOMName(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 357
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:358"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:363"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:362"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:363"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:368"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:367"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:368"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:374"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:373"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:374"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:382"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:381"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:375"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:363,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:368,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Verifier:369,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalNameException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalNameException:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].setValue(java.lang.String)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Attribute:481"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:485"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Attribute:484"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Attribute:486"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:489"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Attribute:488"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Attribute:482,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.Attribute:485,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Attribute:487,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    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].charAt(int)"
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.jdom2.Verifier].isLowSurrogate(char)"
    - "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - "[org.jdom2.Verifier].isXMLCharacter(int)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:434"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:438"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:439"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:494"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:450"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:460"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:452"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:449"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:461"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:488"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:465"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:469"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:468"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:469"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:481"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:471"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:438,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:450,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:461,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.jdom2.Verifier:466,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.jdom2.Verifier:469,1"
      Dst: "[org.jdom2.Verifier].isLowSurrogate(char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].decodeSurrogatePair(char,char)"
    - Src: "org.jdom2.Verifier:471,1"
      Dst: "[org.jdom2.Verifier].isXMLCharacter(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 17
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeType"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Attribute:512"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:512"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Attribute:511"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Attribute:443"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:449"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Attribute:448"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Attribute:449"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:454"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Attribute:449"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:454"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Attribute:449,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Attribute:449,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Attribute:451,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].attribute(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Attribute"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:112"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:112,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:112,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.Attribute"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeType].byIndex(int)"
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:88,1"
      Dst: "[org.jdom2.AttributeType].byIndex(int)"
    - Src: "org.jdom2.DefaultJDOMFactory:88,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].byIndex(int)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    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()"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - "[org.jdom2.AttributeType].values()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:161"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:164"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:163"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:164"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:168"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeType:164,1"
      Dst: "[org.jdom2.AttributeType].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:115,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].values()"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.AttributeType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeType:65,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    - "[org.jdom2.Attribute].setName(java.lang.String)"
    - "[org.jdom2.Attribute].setValue(java.lang.String)"
    - "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:219,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    - Src: "org.jdom2.Attribute:220,1"
      Dst: "[org.jdom2.Attribute].setName(java.lang.String)"
    - Src: "org.jdom2.Attribute:221,1"
      Dst: "[org.jdom2.Attribute].setValue(java.lang.String)"
    - Src: "org.jdom2.Attribute:222,1"
      Dst: "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - Src: "org.jdom2.Attribute:223,1"
      Dst: "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Attribute"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:120"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:120,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:120,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.Attribute"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:95,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    - "[org.jdom2.Attribute].setName(java.lang.String)"
    - "[org.jdom2.Attribute].setValue(java.lang.String)"
    - "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:219,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    - Src: "org.jdom2.Attribute:220,1"
      Dst: "[org.jdom2.Attribute].setName(java.lang.String)"
    - Src: "org.jdom2.Attribute:221,1"
      Dst: "[org.jdom2.Attribute].setValue(java.lang.String)"
    - Src: "org.jdom2.Attribute:222,1"
      Dst: "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - Src: "org.jdom2.Attribute:223,1"
      Dst: "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].attribute(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Attribute"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:127"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:127,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:127,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Attribute"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:100,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:244,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    - "[org.jdom2.Attribute].setName(java.lang.String)"
    - "[org.jdom2.Attribute].setValue(java.lang.String)"
    - "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:219,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    - Src: "org.jdom2.Attribute:220,1"
      Dst: "[org.jdom2.Attribute].setName(java.lang.String)"
    - Src: "org.jdom2.Attribute:221,1"
      Dst: "[org.jdom2.Attribute].setValue(java.lang.String)"
    - Src: "org.jdom2.Attribute:222,1"
      Dst: "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - Src: "org.jdom2.Attribute:223,1"
      Dst: "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].attribute(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:134"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:134,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:134,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:106,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:294,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeType].byIndex(int)"
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:198,1"
      Dst: "[org.jdom2.AttributeType].byIndex(int)"
    - Src: "org.jdom2.Attribute:198,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].byIndex(int)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    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()"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - "[org.jdom2.AttributeType].values()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:161"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:164"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:163"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:164"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:168"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeType:164,1"
      Dst: "[org.jdom2.AttributeType].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    - "[org.jdom2.Attribute].setName(java.lang.String)"
    - "[org.jdom2.Attribute].setValue(java.lang.String)"
    - "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:219,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    - Src: "org.jdom2.Attribute:220,1"
      Dst: "[org.jdom2.Attribute].setName(java.lang.String)"
    - Src: "org.jdom2.Attribute:221,1"
      Dst: "[org.jdom2.Attribute].setValue(java.lang.String)"
    - Src: "org.jdom2.Attribute:222,1"
      Dst: "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - Src: "org.jdom2.Attribute:223,1"
      Dst: "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:141"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:141,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:141,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:111,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:268,1"
      Dst: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    - "[org.jdom2.Attribute].setName(java.lang.String)"
    - "[org.jdom2.Attribute].setValue(java.lang.String)"
    - "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:219,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    - Src: "org.jdom2.Attribute:220,1"
      Dst: "[org.jdom2.Attribute].setName(java.lang.String)"
    - Src: "org.jdom2.Attribute:221,1"
      Dst: "[org.jdom2.Attribute].setValue(java.lang.String)"
    - Src: "org.jdom2.Attribute:222,1"
      Dst: "[org.jdom2.Attribute].setAttributeType(org.jdom2.AttributeType)"
    - Src: "org.jdom2.Attribute:223,1"
      Dst: "[org.jdom2.Attribute].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].cdata(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.CDATA"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].cdata(int,int,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:148"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:148,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:148,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].cdata(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].cdata(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.CDATA"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CDATA].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:121,1"
      Dst: "[org.jdom2.CDATA].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.CDATA].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:98,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.CDATA:99,1"
      Dst: "[org.jdom2.CDATA].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].text(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Text"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].text(int,int,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:153"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:153,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:153,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].text(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].text(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.Text"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:131,1"
      Dst: "[org.jdom2.Text].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.Text].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:111,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Text:112,1"
      Dst: "[org.jdom2.Text].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].comment(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Comment"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].comment(int,int,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.SlimJDOMFactory:158"
      Branch Sides:
      - BranchSide: "org.jdom2.SlimJDOMFactory:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:158,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:158,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].comment(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].comment(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Comment"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Comment].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:141,1"
      Dst: "[org.jdom2.Comment].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.Comment].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:88,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Comment:89,1"
      Dst: "[org.jdom2.Comment].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.DocType"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:163,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:163,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.DocType"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:152,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.DocType].setElementName(java.lang.String)"
    - "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - "[org.jdom2.DocType].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:124,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.DocType:125,1"
      Dst: "[org.jdom2.DocType].setElementName(java.lang.String)"
    - Src: "org.jdom2.DocType:126,1"
      Dst: "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - Src: "org.jdom2.DocType:127,1"
      Dst: "[org.jdom2.DocType].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].docType(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.DocType"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:168,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:168,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.DocType"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:163,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:145,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].docType(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.DocType"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:173,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:173,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.DocType"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:174,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:158,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:178,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:178,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:201,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - "[org.jdom2.Element].setName(java.lang.String)"
    - "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:160,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Element:129,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    - Src: "org.jdom2.Element:161,1"
      Dst: "[org.jdom2.Element].setName(java.lang.String)"
    - Src: "org.jdom2.Element:162,1"
      Dst: "[org.jdom2.Element].setNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].element(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:183,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:183,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Element"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:211,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:173,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].element(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:188,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:188,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:222,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:188,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Element:188,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].element(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:193,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:193,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Element"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:233,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:204,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Element:204,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].processingInstruction(int,int,java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:199,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:199,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:256,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:117,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.ProcessingInstruction:118,1"
      Dst: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:119,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:205,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:205,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:268,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:132,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.ProcessingInstruction:133,1"
      Dst: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:134,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].processingInstruction(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:210,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:210,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].processingInstruction(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:244,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:103,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].entityRef(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.EntityRef"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:215,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:215,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.EntityRef"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:278,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:97,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.EntityRef"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:220,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:220,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.EntityRef"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:289,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.EntityRef].setName(java.lang.String)"
    - "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:129,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.EntityRef:130,1"
      Dst: "[org.jdom2.EntityRef].setName(java.lang.String)"
    - Src: "org.jdom2.EntityRef:131,1"
      Dst: "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - Src: "org.jdom2.EntityRef:132,1"
      Dst: "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.SlimJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.SlimJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.EntityRef"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.SlimJDOMFactory:225,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.SlimJDOMFactory:225,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.DefaultJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.EntityRef"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:300,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:112,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].<init>(java.awt.Frame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Frame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JDialog].<init>(java.awt.Frame)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.FlowLayout].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.JTSVersion].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.Component].enableEvents(long)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[java.awt.Window].pack()"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:59,1"
      Dst: "[javax.swing.JDialog].<init>(java.awt.Frame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:37,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:42,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:43,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:49,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:51,1"
      Dst: "[java.awt.FlowLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:52,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[org.locationtech.jts.JTSVersion].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:60,1"
      Dst: "[java.awt.Component].enableEvents(long)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:64,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:66,1"
      Dst: "[java.awt.Window].pack()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Dialog].setTitle(java.lang.String)"
    - "[java.awt.Dialog].setResizable(boolean)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.GridLayout].setRows(int)"
    - "[java.awt.GridLayout].setColumns(int)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JDialog].getContentPane()"
    functionUses: 0
    ICount: 102
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:72,1"
      Dst: "[java.awt.Dialog].setTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:73,1"
      Dst: "[java.awt.Dialog].setResizable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:74,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:78,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:78,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:79,1"
      Dst: "[java.awt.GridLayout].setRows(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:80,1"
      Dst: "[java.awt.GridLayout].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:82,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:82,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:83,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:84,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:97,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:98,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:99,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:101,1"
      Dst: "[javax.swing.JDialog].getContentPane()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].processWindowEvent(java.awt.event.WindowEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.WindowEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.AWTEvent].getID()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].cancel()"
    - "[javax.swing.JDialog].processWindowEvent(java.awt.event.WindowEvent)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:115,1"
      Dst: "[java.awt.AWTEvent].getID()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].cancel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:118,1"
      Dst: "[javax.swing.JDialog].processWindowEvent(java.awt.event.WindowEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].cancel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Window].dispose()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:123,1"
      Dst: "[java.awt.Window].dispose()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].cancel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Window].dispose()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:123,1"
      Dst: "[java.awt.Window].dispose()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].getSource()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].cancel()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:128,1"
      Dst: "[java.util.EventObject].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].cancel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox].cancel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Window].dispose()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder_AboutBox:123,1"
      Dst: "[java.awt.Window].dispose()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool].getGeometryType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PolygonTool"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:41,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:42,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].computeLinear(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].reverse(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:61,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:62,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].computeLinear(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:62,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].reverse(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].reverse(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:72,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].computeLine(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:100"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:87,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:88,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:98,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:99,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:99,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:107,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:110,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:249"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:264,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:265,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:268,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].computeLinear(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].setFixInvalidLines(boolean)"
    - "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].getGeometry()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.ExtractLineByLocation:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.ExtractLineByLocation:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:131,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:131,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:132,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].setFixInvalidLines(boolean)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:134,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].isVertex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:137,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:137,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:138,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:138,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:138,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:142,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:144,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:145,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:137,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:150,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$5].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$5:195,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$5].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].expandEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$5:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$5:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$5:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$5:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$5:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$5:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$5:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$5:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$5:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$5:201,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$5:202,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$5:208,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$5:209,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$5:209,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].expandEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$5:211,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].<init>()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jaxen.DefaultNavigator].<init>()"
    - "[java.util.IdentityHashMap].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:84,1"
      Dst: "[org.jaxen.DefaultNavigator].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:91,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].clear()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:95,1"
      Dst: "[java.util.IdentityHashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].parseXPath(java.lang.String)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jaxen.XPath"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jaxen.BaseXPath].<init>(java.lang.String,org.jaxen.Navigator)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:101,1"
      Dst: "[org.jaxen.BaseXPath].<init>(java.lang.String,org.jaxen.Navigator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getDocument(java.lang.String)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].<init>()"
    - "[org.jdom2.input.SAXBuilder].build(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jaxen.FunctionCallException].<init>(java.lang.String,java.lang.Exception)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:106,1"
      Dst: "[org.jdom2.input.SAXBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:108,1"
      Dst: "[org.jdom2.input.SAXBuilder].build(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:110,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:110,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:110,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:110,1"
      Dst: "[org.jaxen.FunctionCallException].<init>(java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].<init>()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:221,1"
      Dst: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.input.sax.XMLReaderJDOMFactory"
    - "org.jdom2.input.sax.SAXHandlerFactory"
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:338"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:337"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:336"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:341"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:344"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:341"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:337,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:178,1"
      Dst: "[java.util.HashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - "[java.net.MalformedURLException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1261"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1299"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1282"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1282"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1285"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1285"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1299"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1262,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1266,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1266,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1280,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.input.SAXBuilder:1282,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.input.SAXBuilder:1282,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - Src: "org.jdom2.input.SAXBuilder:1287,1"
      Dst: "[java.net.MalformedURLException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1293,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandlerFactory].createSAXHandler(org.jdom2.JDOMFactory)"
    - "[org.jdom2.input.sax.SAXHandler].setExpandEntities(boolean)"
    - "[org.jdom2.input.sax.SAXHandler].setIgnoringElementContentWhitespace(boolean)"
    - "[org.jdom2.input.sax.SAXHandler].setIgnoringBoundaryWhitespace(boolean)"
    - "[org.jdom2.input.SAXBuilder].createParser()"
    - "[org.jdom2.input.SAXBuilder].configureParser(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler)"
    - "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    - "[org.jdom2.input.sax.SAXBuilderEngine].<init>(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler,boolean)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:848,1"
      Dst: "[org.jdom2.input.sax.SAXHandlerFactory].createSAXHandler(org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.SAXBuilder:850,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].setExpandEntities(boolean)"
    - Src: "org.jdom2.input.SAXBuilder:851,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].setIgnoringElementContentWhitespace(boolean)"
    - Src: "org.jdom2.input.SAXBuilder:852,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].setIgnoringBoundaryWhitespace(boolean)"
    - Src: "org.jdom2.input.SAXBuilder:854,1"
      Dst: "[org.jdom2.input.SAXBuilder].createParser()"
    - Src: "org.jdom2.input.SAXBuilder:856,1"
      Dst: "[org.jdom2.input.SAXBuilder].configureParser(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler)"
    - Src: "org.jdom2.input.SAXBuilder:857,1"
      Dst: "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    - Src: "org.jdom2.input.SAXBuilder:859,1"
      Dst: "[org.jdom2.input.sax.SAXBuilderEngine].<init>(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].setExpandEntities(boolean)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].setIgnoringElementContentWhitespace(boolean)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].setIgnoringBoundaryWhitespace(boolean)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].createParser()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.XMLReader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaderJDOMFactory].createXMLReader()"
    - "[org.xml.sax.XMLFilter].getParent()"
    - "[org.xml.sax.XMLFilter].setParent(org.xml.sax.XMLReader)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:874"
      Branch Sides: []
    - Branch String: "org.jdom2.input.SAXBuilder:877"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:880"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:879"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:871,1"
      Dst: "[org.jdom2.input.sax.XMLReaderJDOMFactory].createXMLReader()"
    - Src: "org.jdom2.input.SAXBuilder:877,1"
      Dst: "[org.xml.sax.XMLFilter].getParent()"
    - Src: "org.jdom2.input.SAXBuilder:880,1"
      Dst: "[org.xml.sax.XMLFilter].setParent(org.xml.sax.XMLReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].configureParser(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.xml.sax.XMLReader"
    - "org.jdom2.input.sax.SAXHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.XMLReader].setContentHandler(org.xml.sax.ContentHandler)"
    - "[org.xml.sax.XMLReader].setEntityResolver(org.xml.sax.EntityResolver)"
    - "[org.xml.sax.XMLReader].setDTDHandler(org.xml.sax.DTDHandler)"
    - "[org.xml.sax.XMLReader].setErrorHandler(org.xml.sax.ErrorHandler)"
    - "[org.jdom2.input.sax.BuilderErrorHandler].<init>()"
    - "[org.xml.sax.XMLReader].setProperty(java.lang.String,java.lang.Object)"
    - "[java.util.HashMap].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.Boolean].booleanValue()"
    - "[org.jdom2.input.SAXBuilder].internalSetFeature(org.xml.sax.XMLReader,java.lang.String,boolean,java.lang.String)"
    - "[org.jdom2.input.SAXBuilder].internalSetProperty(org.xml.sax.XMLReader,java.lang.String,java.lang.Object,java.lang.String)"
    - "[org.xml.sax.XMLReader].getFeature(java.lang.String)"
    - "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:933"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:937"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:936"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:937"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:940"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:939"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:943"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:946"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:945"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:962"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:974"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:975"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:980"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:979"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:980"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:992"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:991"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:992"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:996"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:995"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:999"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1010"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:931,1"
      Dst: "[org.xml.sax.XMLReader].setContentHandler(org.xml.sax.ContentHandler)"
    - Src: "org.jdom2.input.SAXBuilder:934,1"
      Dst: "[org.xml.sax.XMLReader].setEntityResolver(org.xml.sax.EntityResolver)"
    - Src: "org.jdom2.input.SAXBuilder:938,1"
      Dst: "[org.xml.sax.XMLReader].setDTDHandler(org.xml.sax.DTDHandler)"
    - Src: "org.jdom2.input.SAXBuilder:944,1"
      Dst: "[org.xml.sax.XMLReader].setErrorHandler(org.xml.sax.ErrorHandler)"
    - Src: "org.jdom2.input.SAXBuilder:946,1"
      Dst: "[org.jdom2.input.sax.BuilderErrorHandler].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:952,1"
      Dst: "[org.xml.sax.XMLReader].setProperty(java.lang.String,java.lang.Object)"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.HashMap].entrySet()"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[org.jdom2.input.SAXBuilder].internalSetFeature(org.xml.sax.XMLReader,java.lang.String,boolean,java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:981,1"
      Dst: "[org.jdom2.input.SAXBuilder].internalSetProperty(org.xml.sax.XMLReader,java.lang.String,java.lang.Object,java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:992,1"
      Dst: "[org.xml.sax.XMLReader].getFeature(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:993,1"
      Dst: "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 30
  - functionName: "[org.jdom2.input.sax.BuilderErrorHandler].<init>()"
    functionSourceFile: "org.jdom2.input.sax.BuilderErrorHandler"
    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: "org.jdom2.input.sax.BuilderErrorHandler:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].internalSetFeature(org.xml.sax.XMLReader,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.xml.sax.XMLReader"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1020,1"
      Dst: "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:86,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].internalSetProperty(org.xml.sax.XMLReader,java.lang.String,java.lang.Object,java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.xml.sax.XMLReader"
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.XMLReader].setProperty(java.lang.String,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()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1039,1"
      Dst: "[org.xml.sax.XMLReader].setProperty(java.lang.String,java.lang.Object)"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.jdom2.input.sax.SAXBuilderEngine].<init>(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler,boolean)"
    functionSourceFile: "org.jdom2.input.sax.SAXBuilderEngine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.xml.sax.XMLReader"
    - "org.jdom2.input.sax.SAXHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXBuilderEngine:121,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1262"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isText(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isProcessingInstruction(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isNamespace(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isElement(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isDocument(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isComment(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isAttribute(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getTextStringValue(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].getText()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:154,1"
      Dst: "[org.jdom2.Text].getText()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].getText()"
    functionSourceFile: "org.jdom2.Text"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getNamespaceStringValue(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    - "[org.jdom2.Namespace].getURI()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:159,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:159,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getNamespacePrefix(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    - "[org.jdom2.Namespace].getPrefix()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:164,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:164,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    - "[org.jdom2.Text].getText()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:176"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:175"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:170"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:172"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:171"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:172"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:175"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:169,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:171,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:173,1"
      Dst: "[org.jdom2.Text].getText()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.jdom2.Element].getContent()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 762
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].getText()"
    functionSourceFile: "org.jdom2.Text"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getElementStringValue(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:180,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:181,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:182,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    - "[org.jdom2.Text].getText()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:176"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:175"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:170"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:172"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:171"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:172"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:175"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:168,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:169,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:171,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].recurseElementText(org.jdom2.Element,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:173,1"
      Dst: "[org.jdom2.Text].getText()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getElementQName(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.lang.String].length()"
    - "[org.jdom2.Element].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.Element].getNamespacePrefix()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:188"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:191"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:188,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:188,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:188,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:189,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:191,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:191,1"
      Dst: "[org.jdom2.Element].getNamespacePrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:191,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:191,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Element].getNamespace()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 238
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 212
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespacePrefix()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:283,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getElementNamespaceUri(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getNamespaceURI()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:196,1"
      Dst: "[org.jdom2.Element].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespaceURI()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getURI()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:294,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getElementName(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getName()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:201,1"
      Dst: "[org.jdom2.Element].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 212
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getCommentStringValue(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Comment].getValue()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:206,1"
      Dst: "[org.jdom2.Comment].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].getValue()"
    functionSourceFile: "org.jdom2.Comment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getAttributeStringValue(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getValue()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:211,1"
      Dst: "[org.jdom2.Attribute].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getValue()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 467
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getAttributeQName(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getNamespacePrefix()"
    - "[java.lang.String].length()"
    - "[org.jdom2.Attribute].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:217"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:220"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:217,1"
      Dst: "[org.jdom2.Attribute].getNamespacePrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:217,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:218,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:220,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:220,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:220,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Attribute].getNamespacePrefix()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:408,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getName()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 335
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getAttributeNamespaceUri(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getNamespaceURI()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:225,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getNamespaceURI()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 418
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getURI()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:419,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getAttributeName(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getName()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:230,1"
      Dst: "[org.jdom2.Attribute].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getName()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 335
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getProcessingInstructionTarget(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].getTarget()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:235,1"
      Dst: "[org.jdom2.ProcessingInstruction].getTarget()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].getTarget()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getProcessingInstructionData(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].getData()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:240,1"
      Dst: "[org.jdom2.ProcessingInstruction].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].getData()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getDocumentNode(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Content].getDocument()"
    - "[org.jdom2.Attribute].getDocument()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:245"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:248"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:247"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:248"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:251"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:254"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:249,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:249,1"
      Dst: "[org.jdom2.Content].getDocument()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:252,1"
      Dst: "[org.jdom2.Attribute].getDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getDocument()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Document"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getDocument()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Attribute:314"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:313"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Attribute:314,1"
      Dst: "[org.jdom2.Content].getDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getParentNode(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.Attribute].getParent()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:259"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:262"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:261"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:262"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:265"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:264"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:265"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:268"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:267"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:268"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:271"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:263,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:266,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:269,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getAttributeAxisIterator(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isElement(java.lang.Object)"
    - "[org.jdom2.Element].hasAttributes()"
    - "[org.jdom2.Element].getAttributes()"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:276"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:279"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:278"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:276"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:279"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:276,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isElement(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:276,1"
      Dst: "[org.jdom2.Element].hasAttributes()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:277,1"
      Dst: "[org.jdom2.Element].getAttributes()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:277,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isElement(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].hasAttributes()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1065
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].isEmpty()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1066"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1065"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.jdom2.Element:1066"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1065"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.jdom2.Element:1066,1"
      Dst: "[org.jdom2.AttributeList].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.Element].getAttributes()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1104
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getAttributeList()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:1105,1"
      Dst: "[org.jdom2.Element].getAttributeList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getChildAxisIterator(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Parent].getContent()"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:284"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:287"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:285,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:285,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getNamespaceAxisIterator(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isElement(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].<init>(org.jdom2.Namespace,org.jdom2.Element)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:293"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:296"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:295"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:297"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:307"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:306"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:301"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:304"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:293,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isElement(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:296,1"
      Dst: "[java.util.IdentityHashMap].get(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:298,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:299,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:301,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:301,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:301,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:302,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].<init>(org.jdom2.Namespace,org.jdom2.Element)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:304,1"
      Dst: "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:307,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].isElement(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespacesInScope()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Element].getNamespacePrefix()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getAdditionalNamespaces()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.TreeMap].containsKey(java.lang.Object)"
    - "[org.jdom2.Element].getAttributes()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Content].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.TreeMap].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[java.util.TreeMap].values()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1723"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1730"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1729"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1724"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1730"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1729"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1725"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1728"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1727"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1730"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1740"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1739"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1731"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1740"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1739"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1733"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1736"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1735"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1741"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1749"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1748"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1742"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1749"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1748"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1743"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1746"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1745"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1749"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1753"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1749"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1753"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:1720,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.jdom2.Element:1721,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:1721,1"
      Dst: "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Element:1722,1"
      Dst: "[org.jdom2.Element].getNamespacePrefix()"
    - Src: "org.jdom2.Element:1722,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[org.jdom2.Element].getAdditionalNamespaces()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.Element:1725,1"
      Dst: "[java.util.TreeMap].containsKey(java.lang.Object)"
    - Src: "org.jdom2.Element:1731,1"
      Dst: "[org.jdom2.Element].getAttributes()"
    - Src: "org.jdom2.Element:1732,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.Element:1740,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.Element:1742,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.Element:1754,1"
      Dst: "[java.util.TreeMap].size()"
    - Src: "org.jdom2.Element:1754,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.Element:1755,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.Element:1756,1"
      Dst: "[java.util.TreeMap].remove(java.lang.Object)"
    - Src: "org.jdom2.Element:1757,1"
      Dst: "[java.util.TreeMap].values()"
    - Src: "org.jdom2.Element:1757,1"
      Dst: "[java.util.ArrayList].addAll(java.util.Collection)"
    - Src: "org.jdom2.Element:1759,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 22
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].<init>(org.jdom2.Namespace,org.jdom2.Element)"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.NamespaceContainer:81,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].getParentAxisIterator(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jaxen.util.SingleObjectIterator].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:315"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:317"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:316"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:317"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:319"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:318"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:319"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:321"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:322"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:325"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:324"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:316,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:318,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:320,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:323,1"
      Dst: "[org.jaxen.util.SingleObjectIterator].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].readObject(java.io.ObjectInputStream)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.ObjectInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].defaultReadObject()"
    - "[java.util.IdentityHashMap].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:330,1"
      Dst: "[java.io.ObjectInputStream].defaultReadObject()"
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:331,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].writeObject(java.io.ObjectOutputStream)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    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: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:336,1"
      Dst: "[java.io.ObjectOutputStream].defaultWriteObject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].<init>(java.util.Iterator,javax.xml.stream.XMLEventFactory,boolean)"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Iterator"
    - "javax.xml.stream.XMLEventFactory"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].specified(java.util.Iterator)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:162"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:160"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:160,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:162,1"
      Dst: "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].specified(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].specified(java.util.Iterator)"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Attribute].isSpecified()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.ArrayList].iterator()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:167"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:170"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:169"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:171"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:177"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:176"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:173"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:176"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:175"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:177"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:170,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:171,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:172,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:173,1"
      Dst: "[org.jdom2.Attribute].isSpecified()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:174,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:177,1"
      Dst: "[java.util.ArrayList].isEmpty()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:177,1"
      Dst: "[java.util.ArrayList].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.jdom2.Attribute].isSpecified()"
    functionSourceFile: "org.jdom2.Attribute"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator"
    linkageType: null
    functionLinenumber: 181
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 191
    ICount: 10
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:182"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:181"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:182"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:181"
        BranchSideFuncs:
        - "hasNext()"
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:182,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 1
    returnType: "javax.xml.stream.events.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getValue()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.Iterator].next()"
    - "[javax.xml.stream.XMLEventFactory].createAttribute(java.lang.String,java.lang.String)"
    - "[javax.xml.stream.XMLEventFactory].createAttribute(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 195
    ICount: 19
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:189"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:192"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:191"
        BranchSideFuncs:
        - "getURI()"
        - "getName()"
        - "getPrefix()"
        - "getValue()"
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:187,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:188,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:190,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:190,1"
      Dst: "[org.jdom2.Attribute].getValue()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:190,1"
      Dst: "[javax.xml.stream.XMLEventFactory].createAttribute(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:192,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:192,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:192,1"
      Dst: "[javax.xml.stream.XMLEventFactory].createAttribute(java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Attribute].getNamespace()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getName()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 335
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getValue()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 467
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].remove()"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator:198,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonalExtracter].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonalExtracter"
    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: "org.locationtech.jts.geom.util.PolygonalExtracter:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonalExtracter"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry:org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:37"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:36"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:39"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:45"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PolygonalExtracter:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonalExtracter:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:37,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:41,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:41,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonalExtracter"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:56,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonalExtracter:56,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DissolveFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.DissolveFunctions"
    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: "org.locationtech.jtstest.function.DissolveFunctions:19,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DissolveFunctions].dissolve(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DissolveFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DissolveFunctions:23,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.LineDissolver].<init>()"
    - "[org.locationtech.jts.dissolve.LineDissolver].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.dissolve.LineDissolver].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:66,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].<init>()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:67,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:68,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].<init>()"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Stack].<init>()"
    - "[org.locationtech.jts.dissolve.DissolveEdgeGraph].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:74,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:156,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:78,1"
      Dst: "[org.locationtech.jts.dissolve.DissolveEdgeGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.DissolveEdgeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveEdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.DissolveEdgeGraph:26,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:40,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.LineDissolver$1].<init>(org.locationtech.jts.dissolve.LineDissolver)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:90,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver$1].<init>(org.locationtech.jts.dissolve.LineDissolver)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:90,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver$1].<init>(org.locationtech.jts.dissolve.LineDissolver)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.dissolve.LineDissolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver$1:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].getResult()"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.LineDissolver].computeResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:142,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].computeResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].computeResult()"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraph].getVertexEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.dissolve.LineDissolver].process(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:147,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].getVertexEdges()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:148,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:148,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:149,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:150,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:151,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].process(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:153,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].getVertexEdges()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:154,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.MarkHalfEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.MarkHalfEdge:35,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked()"
    functionSourceFile: "org.locationtech.jts.edgegraph.MarkHalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].process(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].prevNode()"
    - "[org.locationtech.jts.dissolve.LineDissolver].stackEdges(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.dissolve.LineDissolver].buildLines()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:159,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].prevNode()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:163,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].stackEdges(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:165,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].buildLines()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].prevNode()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].prev()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:494"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:492"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:491"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:492,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:493,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].prev()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 471
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:475"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:474"
        BranchSideFuncs:
        - "oNext()"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:476,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].prev()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.HalfEdge:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.HalfEdge:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:198,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 212
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].stackEdges(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:294"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:292"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:293,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:294,1"
      Dst: "[java.util.Vector].add(java.lang.Object)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:295,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].buildLines()"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.dissolve.LineDissolver].buildLine(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:174,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:175,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:176,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].isMarked(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:178,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].buildLine(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].buildLine(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].markBoth(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - "[org.locationtech.jts.dissolve.LineDissolver].updateRingStartEdge(org.locationtech.jts.dissolve.DissolveHalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].next()"
    - "[org.locationtech.jts.dissolve.LineDissolver].buildRing(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.geom.Coordinate].clone()"
    - "[org.locationtech.jts.geom.CoordinateList].add(java.lang.Object,boolean)"
    - "[org.locationtech.jts.dissolve.LineDissolver].stackEdges(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[org.locationtech.jts.dissolve.LineDissolver].addLine(org.locationtech.jts.geom.CoordinateList)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:229,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:233,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].markBoth(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:234,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:234,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:234,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:236,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:236,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:237,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].updateRingStartEdge(org.locationtech.jts.dissolve.DissolveHalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:238,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].next()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:241,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].buildRing(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:250,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:250,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].clone()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:250,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(java.lang.Object,boolean)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:253,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].stackEdges(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:255,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].addLine(org.locationtech.jts.geom.CoordinateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.MarkHalfEdge].markBoth(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.edgegraph.MarkHalfEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].mark()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.MarkHalfEdge:77,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].mark()"
    - Src: "org.locationtech.jts.edgegraph.MarkHalfEdge:78,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.MarkHalfEdge].mark()"
    functionSourceFile: "org.locationtech.jts.edgegraph.MarkHalfEdge"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].updateRingStartEdge(org.locationtech.jts.dissolve.DissolveHalfEdge)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.dissolve.DissolveHalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.DissolveHalfEdge].isStart()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:201,1"
      Dst: "[org.locationtech.jts.dissolve.DissolveHalfEdge].isStart()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:202,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:210,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:210,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.dissolve.DissolveHalfEdge].isStart()"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveHalfEdge"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].next()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].buildRing(org.locationtech.jts.edgegraph.HalfEdge)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.HalfEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].next()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.dissolve.LineDissolver].addLine(org.locationtech.jts.geom.CoordinateList)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.dissolve.LineDissolver:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:271"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.dissolve.LineDissolver:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:259,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:262,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:262,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:262,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:264,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:264,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:265,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].next()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:275,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:278,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].addLine(org.locationtech.jts.geom.CoordinateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].addLine(org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:282,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:282,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:282,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].clone()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 398
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:399,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.geom.Coordinate:403,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(java.lang.Object,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:131,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6:131,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbTestCaseJava_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbTestCaseJava_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbTestCaseJava_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:216,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:55,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:60,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:61,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:62,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:63,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:64,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.JavaTestWriter:72,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 19
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].access$000(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 2
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter:113,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$000(org.locationtech.jts.precision.SimpleMinimumClearance)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter:113,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter:113,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$000(org.locationtech.jts.precision.SimpleMinimumClearance)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:124,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].<init>(org.jdom2.Namespace,org.jdom2.Element)"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.NamespaceContainer:81,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].toString()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.NamespaceContainer:96,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.NamespaceContainer:96,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.NamespaceContainer:96,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.NamespaceContainer:96,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.NamespaceContainer:96,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 32
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:88,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 31
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:102,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:103,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:104,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:117,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 30
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:156,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:157,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:160,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:162,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:163,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:164,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:165,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:166,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:167,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:168,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:173,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:175,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].isValidPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:180,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:180,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].isValidPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:183,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].isValidPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:187,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:188,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].isValid()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isFinite(double)"
    functionUses: 3
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:277,1"
      Dst: "[java.lang.Double].isFinite(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRingElement(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:209,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRingElement(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:211,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRingElement(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:216,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:217,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:218,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:221,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:224,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:232,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:234,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:267,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:268,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 2
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:440"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:439"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:445"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:444"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:443"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:442"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:439,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:440,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:442,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:443,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:341,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:355,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:241,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:243,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:248,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:249,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:250,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:252,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:257,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 29
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:300,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:302,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 28
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixHoles(org.locationtech.jts.geom.Polygon)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].classifyHoles(org.locationtech.jts.geom.Geometry,java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].difference(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:307,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:308,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:309,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:311,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:317,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:322,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixHoles(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:323,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:325,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].classifyHoles(org.locationtech.jts.geom.Geometry,java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:326,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].difference(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:327,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:332,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:333,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 26
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferByZero(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:394,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:395,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferByZero(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferByZero(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:265,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:269,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:271,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:274,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 317
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:318,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferParameters:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:366,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.buffer.BufferOp].extractPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:288,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:291,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:292,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].extractPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:294,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:294,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:295,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].extractPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:299,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:300,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:300,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:157,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:158,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixHoles(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 27
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:338,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:339,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:340,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:340,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:342,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].classifyHoles(org.locationtech.jts.geom.Geometry,java.util.List,java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:350"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:349,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:350,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:350,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:350,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:351,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:352,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Polygonal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Lineal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Puntal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:65"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:61,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygon"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygonal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    - "[org.locationtech.jts.geom.Polygon].isRectangle()"
    - "[org.locationtech.jts.geom.Geometry].isRectangle()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:47,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:48,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isRectangle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.BasicPreparedGeometry"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:43,1"
      Dst: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 4
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:47,1"
      Dst: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygon"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:38,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineString"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Lineal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineString:33,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPoint"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Puntal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPoint:30,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].difference(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:369"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:368"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:368,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:370,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:371,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(java.util.Collection)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:383,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:383,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:385,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:388,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:82,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:83,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:84,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:192,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:194,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:195,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:196,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:202,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:203,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:205,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:205,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Point[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:112,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:113,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:286"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:296"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:295"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:272,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:274,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:275,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:276,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:278,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:284,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:287,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:288,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:293,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:293,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:146,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:147,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 29
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:407"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:406"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:411"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:410"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:416"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:415"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:416"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:415"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:399,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:400,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:401,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:402,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:403,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:404,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:407,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:408,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:411,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:414,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 330
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:331,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean,boolean)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:420,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:422,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:422,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean,boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:424,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:428,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:429,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:430,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:431,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 31
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:102,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:103,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:104,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:117,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 30
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:156,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:157,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:160,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:162,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:163,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:164,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:165,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:166,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:167,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:168,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:173,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:175,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].isValidPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:180,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:180,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].isValidPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:183,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].isValidPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:187,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:188,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:192,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:194,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:195,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:196,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPointElement(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:202,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:203,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:205,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:205,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRingElement(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:209,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRingElement(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:211,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRingElement(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:216,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:217,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:218,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:221,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:224,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:232,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:234,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:241,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:243,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:248,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:249,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:250,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:252,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:257,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:267,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:268,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:286"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:296"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:295"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:272,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:274,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:275,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:276,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:278,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineStringElement(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:284,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:287,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:288,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:293,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:293,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 29
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:300,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:302,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 28
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixHoles(org.locationtech.jts.geom.Polygon)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].classifyHoles(org.locationtech.jts.geom.Geometry,java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].difference(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:307,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:308,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:309,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:311,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:317,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:322,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixHoles(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:323,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:325,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].classifyHoles(org.locationtech.jts.geom.Geometry,java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:326,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].difference(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:327,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:332,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:333,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixHoles(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 27
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:338,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:339,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:340,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:340,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:342,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].classifyHoles(org.locationtech.jts.geom.Geometry,java.util.List,java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:350"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:349,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:350,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:350,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:350,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:351,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:352,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].difference(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:369"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:368"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:368,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:370,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:371,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(java.util.Collection)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:383,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:383,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:385,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:388,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].union(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 26
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferByZero(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:394,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:395,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferByZero(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 29
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:407"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:406"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:411"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:410"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:416"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:415"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:416"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:415"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:399,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:400,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:401,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:402,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygonElement(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:403,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:404,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:407,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:408,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:411,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].union(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:414,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean,boolean)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:420,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:422,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:422,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean,boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:424,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:428,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:429,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:430,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepMulti(boolean)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:431,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:41,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:44,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:44,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:45,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:45,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:45,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:48,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:49,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String[],boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:56,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:56,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:60,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:61,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:160,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].isGdbcTestCase(org.locationtech.jtstest.test.TestCase)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCase].getName()"
    - "[org.locationtech.jtstest.test.TestCase].getDescription()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:72,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:72,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:75,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:78,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.test.TestCase].getName()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].getDescription()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXmlFromGdbcTestCase(org.locationtech.jtstest.test.TestCase)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCase].getDescription()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.test.TestCase].getName()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].trim()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:90,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:90,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:91,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:91,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:91,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:92,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:92,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:92,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:91,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].getDescription()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].getName()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryArgPairCode(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:102,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:103,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:105,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:109,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryArgPairCode(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryArgPairCode(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryCode(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryCode(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:115,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getGeometryCode(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:125,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].toXml()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:131,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].toXml()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testrunner.TestCase"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:140,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:142,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:143,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:154,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:160,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:161,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].size()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:165,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:166,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:166,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:167,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:168,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:171,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:177,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getDescription()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:184,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:185,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:188,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:188,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:189,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getWorkspace()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.File].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:200,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:201,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:202,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:204,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:204,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getWorkspace()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.io.File].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:206,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3].colorChanged(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall].<init>(double)"
    functionSourceFile: "org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall].value(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall:32"
        BranchSideFuncs:
        - "getCoordinates()"
        - "ofRing(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall:33,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall:33,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:33,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Area:33,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Area:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Area:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Area:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:71"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.util.NamespaceStack$ForwardWalker].<init>(org.jdom2.Namespace[])"
    functionSourceFile: "org.jdom2.util.NamespaceStack$ForwardWalker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$ForwardWalker:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$ForwardWalker"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 191
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.util.NamespaceStack$ForwardWalker:121"
      Branch Sides:
      - BranchSide: "org.jdom2.util.NamespaceStack$ForwardWalker:120"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$ForwardWalker"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 195
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.util.NamespaceStack$ForwardWalker:126"
      Branch Sides:
      - BranchSide: "org.jdom2.util.NamespaceStack$ForwardWalker:129"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.util.NamespaceStack$ForwardWalker:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$ForwardWalker:127,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.util.NamespaceStack$ForwardWalker].remove()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$ForwardWalker"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$ForwardWalker:134,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder"
    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: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].findSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.triangulate.SplitSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].projectedSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.SplitSegment].setMinimumLength(double)"
    - "[org.locationtech.jts.triangulate.SplitSegment].splitAt(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.SplitSegment].getSplitPoint()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:38,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:39,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:41,1"
      Dst: "[org.locationtech.jts.triangulate.SplitSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:43,1"
      Dst: "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].projectedSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:49,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:54,1"
      Dst: "[org.locationtech.jts.triangulate.SplitSegment].setMinimumLength(double)"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:56,1"
      Dst: "[org.locationtech.jts.triangulate.SplitSegment].splitAt(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:58,1"
      Dst: "[org.locationtech.jts.triangulate.SplitSegment].getSplitPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.SplitSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.triangulate.SplitSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.SplitSegment:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.SplitSegment:48,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].projectedSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:69,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:70,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:435"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:436,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.LineSegment:436,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.LineSegment:438,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:439,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 4
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:378"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:377"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:377,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 443
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    functionUses: 3
    ICount: 25
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:444,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.SplitSegment].setMinimumLength(double)"
    functionSourceFile: "org.locationtech.jts.triangulate.SplitSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.SplitSegment].splitAt(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.SplitSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    - "[org.locationtech.jts.triangulate.SplitSegment].pointAlongReverse(org.locationtech.jts.geom.LineSegment,double)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.SplitSegment:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.SplitSegment:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.SplitSegment:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.SplitSegment:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.SplitSegment:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.SplitSegment:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.SplitSegment:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.SplitSegment:72,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    - Src: "org.locationtech.jts.triangulate.SplitSegment:76,1"
      Dst: "[org.locationtech.jts.triangulate.SplitSegment].pointAlongReverse(org.locationtech.jts.geom.LineSegment,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 309
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].create()"
    - "[org.locationtech.jts.geom.Coordinate].create()"
    - "[org.locationtech.jts.geom.CoordinateXYM].create()"
    - "[org.locationtech.jts.geom.CoordinateXY].create()"
    functionUses: 1
    ICount: 25
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:310,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.SplitSegment].pointAlongReverse(org.locationtech.jts.geom.LineSegment,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.SplitSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.SplitSegment:35,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.SplitSegment].getSplitPoint()"
    functionSourceFile: "org.locationtech.jts.triangulate.SplitSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].projectedSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:69,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - Src: "org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder:70,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:47,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:47,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:56,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].setFindProper(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].setFindAllIntersectionTypes(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasProperIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 96
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasNonProperIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 106
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].getIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].getIntersectionSegments()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 4
    ICount: 48
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:147"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:147"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:178"
        BranchSideFuncs:
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:148,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:153,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:156,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:162,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:179,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 15
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].isDone()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentIntersectionDetector:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentIntersectionDetector:213"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.jdom2.input.stax.DTDParser].populatePatterns()"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.HashMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:161,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.jdom2.input.stax.DTDParser:166,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.stax.DTDParser].buildPattern(java.util.HashMap,java.lang.String)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.regex.Pattern"
    argCount: 2
    argTypes:
    - "java.util.HashMap"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].compile(java.lang.String)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.regex.Matcher].start()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.regex.Matcher].end()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.regex.Pattern].compile(java.lang.String,int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:198"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:212"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:194,1"
      Dst: "[java.util.regex.Pattern].compile(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:195,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.jdom2.input.stax.DTDParser:196,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.stax.DTDParser:198,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "org.jdom2.input.stax.DTDParser:199,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "org.jdom2.input.stax.DTDParser:199,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    - Src: "org.jdom2.input.stax.DTDParser:208,1"
      Dst: "[java.util.regex.Matcher].start()"
    - Src: "org.jdom2.input.stax.DTDParser:208,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.jdom2.input.stax.DTDParser:208,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:210,1"
      Dst: "[java.util.regex.Matcher].end()"
    - Src: "org.jdom2.input.stax.DTDParser:212,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.jdom2.input.stax.DTDParser:213,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.stax.DTDParser:213,1"
      Dst: "[java.util.regex.Pattern].compile(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.util.regex.Matcher"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Matcher].group(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:291"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:297"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:296"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:293"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:291"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:292,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.stax.DTDParser].isWhite(char)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    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.StringBuilder].<init>(int)"
    - "[java.lang.String].toCharArray()"
    - "[org.jdom2.input.stax.DTDParser].isWhite(char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:320"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:368"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:367"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:321"
      Branch Sides: []
    - Branch String: "org.jdom2.input.stax.DTDParser:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:324"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:316"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:332"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:333"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:332"
      Branch Sides: []
    - Branch String: "org.jdom2.input.stax.DTDParser:335"
      Branch Sides: []
    - Branch String: "org.jdom2.input.stax.DTDParser:340"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:354"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:342"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:347"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:361"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:317,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.input.stax.DTDParser:317,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.jdom2.input.stax.DTDParser:320,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "org.jdom2.input.stax.DTDParser:323,1"
      Dst: "[org.jdom2.input.stax.DTDParser].isWhite(char)"
    - Src: "org.jdom2.input.stax.DTDParser:327,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.input.stax.DTDParser:337,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:345,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.input.stax.DTDParser:345,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.jdom2.input.stax.DTDParser:368,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 22
  - functionName: "[org.jdom2.input.stax.DTDParser].isWhite(char)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:307"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:306"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[java.util.regex.Matcher].group(int)"
    - "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:391"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:396"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:395"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:403"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:405"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:404"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:405"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:408"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:407"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:411"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:414"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:390,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.jdom2.input.stax.DTDParser:391,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:396,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "org.jdom2.input.stax.DTDParser:397,1"
      Dst: "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - Src: "org.jdom2.input.stax.DTDParser:404,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:406,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:408,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:86,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.util.regex.Matcher"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Matcher].group(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:291"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:297"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:296"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:293"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:291"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:292,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    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.StringBuilder].<init>(int)"
    - "[java.lang.String].toCharArray()"
    - "[org.jdom2.input.stax.DTDParser].isWhite(char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:320"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:368"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:367"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:321"
      Branch Sides: []
    - Branch String: "org.jdom2.input.stax.DTDParser:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:324"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:316"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:332"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:333"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:332"
      Branch Sides: []
    - Branch String: "org.jdom2.input.stax.DTDParser:335"
      Branch Sides: []
    - Branch String: "org.jdom2.input.stax.DTDParser:340"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:354"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:342"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:347"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:361"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:317,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.input.stax.DTDParser:317,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.jdom2.input.stax.DTDParser:320,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "org.jdom2.input.stax.DTDParser:323,1"
      Dst: "[org.jdom2.input.stax.DTDParser].isWhite(char)"
    - Src: "org.jdom2.input.stax.DTDParser:327,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.input.stax.DTDParser:337,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:345,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.input.stax.DTDParser:345,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.jdom2.input.stax.DTDParser:368,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 22
  - functionName: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.stax.DTDParser].<init>()"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    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: "org.jdom2.input.stax.DTDParser:420,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:48,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateList:49,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:50,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateList:62,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:63,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].get(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:66,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(java.lang.Object,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:131,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(int,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(int,java.lang.Object)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:176"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:164,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:167,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:168,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:176,1"
      Dst: "[java.util.ArrayList].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].addAll(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:187,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.CoordinateList:187,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.CoordinateList:188,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.CoordinateList:188,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:224,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.CoordinateList:227,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:230,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].clone()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(int,java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:241,1"
      Dst: "[java.util.ArrayList].clone()"
    - Src: "org.locationtech.jts.geom.CoordinateList:242,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:243,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:243,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].clone()"
    - Src: "org.locationtech.jts.geom.CoordinateList:243,1"
      Dst: "[java.util.ArrayList].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].clone()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 398
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:399,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.geom.Coordinate:403,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:31"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:30"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].getCursor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Cursor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].activate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].mousePressed(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:48,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].mouseReleased(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].pan(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:54,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].pan(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].pan(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:59,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:60,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomPan(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:561,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:561,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomPan(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomPan(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:299,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:300,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:299,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:113,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].pan(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:59,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:60,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.Item].<init>(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.Item"
    linkageType: null
    functionLinenumber: 20
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.Item:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.Item"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.Item].getItem()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.Item"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.Item].toString()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.Item"
    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)"
    - "[org.locationtech.jts.geom.Envelope].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.Item:35,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.Item:35,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.index.hprtree.Item:35,1"
      Dst: "[org.locationtech.jts.geom.Envelope].toString()"
    - Src: "org.locationtech.jts.index.hprtree.Item:35,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].toString()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:802,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:802,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Envelope:802,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Envelope:802,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree$2].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree$2"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree$2:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree$2].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.index.strtree.STRtree].access$100(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].compareDoubles(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree$2:96,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jts.index.strtree.STRtree$2:96,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].access$100(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.strtree.STRtree$2:95,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].compareDoubles(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].access$100(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].centreY(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:53,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].centreY(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].centreY(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:106,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:106,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:106,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$9].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$9:205,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$9].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$9:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].insertCmdText(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].insertCmdText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].insertCmdText(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getCaretPosition()"
    - "[javax.swing.text.JTextComponent].getDocument()"
    - "[javax.swing.text.Document].insertString(int,java.lang.String,javax.swing.text.AttributeSet)"
    - "[java.lang.Throwable].printStackTrace()"
    - "[javax.swing.JComponent].requestFocusInWindow()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:266,1"
      Dst: "[javax.swing.text.JTextComponent].getCaretPosition()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:267,1"
      Dst: "[javax.swing.text.JTextComponent].getDocument()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:269,1"
      Dst: "[javax.swing.text.Document].insertString(int,java.lang.String,javax.swing.text.AttributeSet)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:273,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:276,1"
      Dst: "[javax.swing.JComponent].requestFocusInWindow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil"
    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: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:17,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil].minExtent(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:23"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:24"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:23"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:21,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:22,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil].maxExtent(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:31"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:30"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeUtil:29,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:45,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:38,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:39,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:41,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:42,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:49,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:55,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:57,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:58,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:59,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:62,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:62,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:63,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:64,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:66,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:69,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:70,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setResult(java.lang.String,java.lang.String,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setString(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setError(java.lang.Throwable)"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultValuePanel:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultValuePanel:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setString(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setError(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:91,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setString(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:97,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:98,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setError(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:103,1"
      Dst: "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:104,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:105,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.util.ExceptionFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setString(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:97,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:98,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setError(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:103,1"
      Dst: "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:104,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:105,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].<init>(double,java.awt.Cursor)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].<init>(double,java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].<init>(double,java.awt.Cursor)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "java.awt.Cursor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].<init>(double,java.awt.Cursor)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "java.awt.Cursor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].mouseClicked(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:53,1"
      Dst: "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:55,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:556,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:556,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:557,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:310,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:311,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:314,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:315,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:320,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:113,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].mousePressed(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanGesture(java.awt.event.MouseEvent)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:60,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanGesture(java.awt.event.MouseEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanGesture(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.InputEvent].isControlDown()"
    - "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80,1"
      Dst: "[java.awt.event.InputEvent].isControlDown()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80,1"
      Dst: "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].mouseReleased(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isSignificantMouseMove(java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanGesture(java.awt.event.MouseEvent)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].pan(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:67,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isSignificantMouseMove(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanGesture(java.awt.event.MouseEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].pan(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isSignificantMouseMove(java.awt.Point)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:128,1"
      Dst: "[java.lang.Math].abs(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanGesture(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.InputEvent].isControlDown()"
    - "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80,1"
      Dst: "[java.awt.event.InputEvent].isControlDown()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80,1"
      Dst: "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].pan(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:59,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:60,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:526,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:527,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:527,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:527,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:529,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 31
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:447"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:446"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:440,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanGesture(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.InputEvent].isControlDown()"
    - "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80,1"
      Dst: "[java.awt.event.InputEvent].isControlDown()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:80,1"
      Dst: "[javax.swing.SwingUtilities].isRightMouseButton(java.awt.event.MouseEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanning()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:82"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].mouseDragged(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getBandGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawBand(java.awt.Graphics)"
    - "[java.awt.event.MouseEvent].getPoint()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getBandGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawBand(java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:93,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getBandGraphics()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Graphics"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - "[javax.swing.JComponent].getGraphics()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics].setXORMode(java.awt.Color)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:99,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:100,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:101,1"
      Dst: "[java.awt.Graphics].setXORMode(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawBand(java.awt.Graphics)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanning()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawLine(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawRect(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanning()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawLine(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawRect(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanning()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:82"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawLine(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics"
    - "java.awt.Point"
    - "java.awt.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].drawLine(int,int,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:144,1"
      Dst: "[java.awt.Graphics].drawLine(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawRect(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics"
    - "java.awt.Point"
    - "java.awt.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.awt.Point].<init>(int,int)"
    - "[java.lang.Math].abs(int)"
    - "[java.awt.Graphics].drawRect(int,int,int,int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:136,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:137,1"
      Dst: "[java.awt.Point].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:138,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:140,1"
      Dst: "[java.awt.Graphics].drawRect(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getBandGraphics()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Graphics"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - "[javax.swing.JComponent].getGraphics()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics].setXORMode(java.awt.Color)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:99,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:100,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:101,1"
      Dst: "[java.awt.Graphics].setXORMode(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawBand(java.awt.Graphics)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanning()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawLine(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawRect(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isPanning()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawLine(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawRect(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].mouseWheelMoved(java.awt.event.MouseWheelEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseWheelEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseWheelEvent].getPreciseWheelRotation()"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:118,1"
      Dst: "[java.awt.event.MouseWheelEvent].getPreciseWheelRotation()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:119,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].panel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:121,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModel(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:556,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:556,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:557,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].isSignificantMouseMove(java.awt.Point)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:128,1"
      Dst: "[java.lang.Math].abs(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawRect(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics"
    - "java.awt.Point"
    - "java.awt.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.awt.Point].<init>(int,int)"
    - "[java.lang.Math].abs(int)"
    - "[java.awt.Graphics].drawRect(int,int,int,int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:136,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:137,1"
      Dst: "[java.awt.Point].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:138,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:140,1"
      Dst: "[java.awt.Graphics].drawRect(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].drawLine(java.awt.Graphics,java.awt.Point,java.awt.Point)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics"
    - "java.awt.Point"
    - "java.awt.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].drawLine(int,int,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:144,1"
      Dst: "[java.awt.Graphics].drawLine(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel$1].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel$1:147,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel$1].valueChanged(javax.swing.event.ListSelectionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ListSelectionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JList].getSelectedValue()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCurrentTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestListPanel$1:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel$1:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel$1:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel$1:150,1"
      Dst: "[javax.swing.JList].getSelectedValue()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel$1:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel$1:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCurrentTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCurrentTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrent(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrent(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrent(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:486"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:492"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:491"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:486"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:485"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:486,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:487,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].size()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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: "org.locationtech.jtstest.test.TestCaseList:33,1"
      Dst: "[java.util.ArrayList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:36,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getName()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:151,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:256,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    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()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:517,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:517,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:498,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].getSelectedIndex()"
    - "[java.awt.Container].getComponent(int)"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].refresh()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:484"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:488"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:487"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:483,1"
      Dst: "[javax.swing.JTabbedPane].getSelectedIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485,1"
      Dst: "[java.awt.Container].getComponent(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:486,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].refresh()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.StatsPanel].refresh()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.StatsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].writeGeomStats(org.locationtech.jtstest.testbuilder.model.LayerList,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - "[java.lang.StringBuffer].toString()"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].setString(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:69,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].writeGeomStats(org.locationtech.jtstest.testbuilder.model.LayerList,java.lang.StringBuffer)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:72,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:76,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].setString(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.StatsPanel].writeGeomStats(org.locationtech.jtstest.testbuilder.model.LayerList,java.lang.StringBuffer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.StatsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].writeGeomStats(java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.StringBuffer)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.StatsPanel:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.StatsPanel:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].writeGeomStats(java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.StringBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: "org.locationtech.jtstest.testbuilder.model.LayerList:60,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.StatsPanel].writeGeomStats(java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.StringBuffer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.StatsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.StatsPanel:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.StatsPanel:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.StatsPanel:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:90,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:90,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:90,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:90,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:30,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasLength(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasArea(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].area(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasLength(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasArea(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].area(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasLength(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:64,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:65,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:68,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:33,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Area:33,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.StatsPanel].setString(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.StatsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.StatsPanel:99,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelope()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:507,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:507,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelope()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:507,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelope()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:64,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:67,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].<init>(org.locationtech.jts.edgegraph.EdgeGraphBuilder)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].access$000(org.locationtech.jts.edgegraph.EdgeGraphBuilder,org.locationtech.jts.geom.LineString)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1:64"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.edgegraph.EdgeGraphBuilder,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1:62,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].access$000(org.locationtech.jts.edgegraph.EdgeGraphBuilder,org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].access$000(org.locationtech.jts.edgegraph.EdgeGraphBuilder,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:30,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].addEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:85,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].addEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].addEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 11
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraph].isValidEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:97"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraph:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraph:100"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:85,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].isValidEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:92,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:95,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].find(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:101,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].insert(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:152,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].isInBoundary(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:156"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].toString()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].loadIndex()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:48,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].loadIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].loadIndex()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:53,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:55,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:56,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:57,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:58,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].getNestedPoint()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].isNested()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 11
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.geom.Polygon:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 31
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:98"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getInteriorRingN(int)"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:77"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:76"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:87"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:90"
        BranchSideFuncs:
        - "isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:77,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:78,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:80,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:88,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:91,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:93,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 751
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 10
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:751"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:753"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:753"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:754"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:755"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:756"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:752,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:753,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:754,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:755,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:756,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 10
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findNonEqualVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isIncidentSegmentInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 4
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:74"
        BranchSideFuncs:
        - "isIncidentSegmentInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
        - "findNonEqualVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:64,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:65,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:66,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:75,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findNonEqualVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:76,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isIncidentSegmentInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:130,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findNonEqualVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:86"
        BranchSideFuncs:
        - "getCoordinateN(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:86"
        BranchSideFuncs:
        - "getCoordinateN(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:81,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:82,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:82,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isIncidentSegmentInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 9
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].intersectingSegIndex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findRingVertexPrev(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findRingVertexNext(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 22
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:110"
        BranchSideFuncs:
        - "findRingVertexPrev(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
        - "findRingVertexNext(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:110"
        BranchSideFuncs:
        - "findRingVertexPrev(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
        - "findRingVertexNext(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:121"
        BranchSideFuncs:
        - "isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:107,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].intersectingSegIndex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:109,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:111,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findRingVertexPrev(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:112,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findRingVertexNext(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:116,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:122,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].intersectingSegIndex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocation].isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:null"
        BranchSideFuncs:
        - "isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:188,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:190,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.PointLocation].isOnSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocation"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:40"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:42"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocation:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocation:42"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocation:38,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocation:41,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PointLocation:43,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findRingVertexPrev(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].ringIndexPrev(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:143"
        BranchSideFuncs:
        - "ringIndexPrev(org.locationtech.jts.geom.Coordinate[],int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:139,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:140,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].ringIndexPrev(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].ringIndexPrev(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:170"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findRingVertexNext(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].ringIndexNext(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:165"
        BranchSideFuncs:
        - "ringIndexNext(org.locationtech.jts.geom.Coordinate[],int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:161,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:162,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].ringIndexNext(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].ringIndexNext(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 174
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:176"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 8
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:83,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:88,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.Polygonizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].access$000(org.locationtech.jts.operation.polygonize.Polygonizer,org.locationtech.jts.geom.LineString)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder:69"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.operation.polygonize.Polygonizer,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder:68,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].access$000(org.locationtech.jts.operation.polygonize.Polygonizer,org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].access$000(org.locationtech.jts.operation.polygonize.Polygonizer,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.Polygonizer"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:52,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:152"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:151"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geom.LineString)"
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:148,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:151,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:152,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:90,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    functionUses: 1
    ICount: 29
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:101"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:100"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:104"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
        - "<init>(org.locationtech.jts.geom.LineString)"
        - "add(org.locationtech.jts.planargraph.Edge)"
        - "setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
        - "getNode(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:100,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:101,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:101,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:108,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:111,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:113,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:114,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:115,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 7
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:406"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:405"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:405,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:406,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:407,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:126"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "add(org.locationtech.jts.planargraph.Node)"
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:120,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:122,1"
      Dst: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:124,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:56,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].<init>()"
    - Src: "org.locationtech.jts.planargraph.Node:56,1"
      Dst: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].<init>()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.planargraph.DirectedEdgeStar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:63,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:47,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    - "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 2
    ICount: 28
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:72,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:76,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:80,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:81,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].<init>(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeEdge"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Edge].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeEdge:28,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].<init>()"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:39,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].setEdge(org.locationtech.jts.planargraph.Edge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].setSym(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionUses: 2
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:59,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].setEdge(org.locationtech.jts.planargraph.Edge)"
    - Src: "org.locationtech.jts.planargraph.Edge:61,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].setSym(org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.planargraph.Edge:63,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.planargraph.Edge:63,1"
      Dst: "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].setEdge(org.locationtech.jts.planargraph.Edge)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Edge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].setSym(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].add(org.locationtech.jts.planargraph.DirectedEdge)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:78,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].add(org.locationtech.jts.planargraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].add(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:46,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea].getArea()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:33,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:34,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].getArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea,org.locationtech.jts.operation.overlayarea.GeometryArea$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:44,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea,org.locationtech.jts.operation.overlayarea.GeometryArea$1)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea,org.locationtech.jts.operation.overlayarea.GeometryArea$1)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.GeometryArea"
    - "org.locationtech.jts.operation.overlayarea.GeometryArea$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter:49,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.GeometryArea"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter:49,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].getArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea,org.locationtech.jts.operation.overlayarea.GeometryArea$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:44,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.GeometryArea,org.locationtech.jts.operation.overlayarea.GeometryArea$1)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 8
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:60,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:60,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:61,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:62,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 7
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,boolean)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 2
    ICount: 35
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:70"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:69"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:93"
        BranchSideFuncs:
        - "getX(int)"
        - "area2Term(double,double,double,double,boolean)"
        - "getY(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:75"
        BranchSideFuncs:
        - "getX(int)"
        - "area2Term(double,double,double,double,boolean)"
        - "getY(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:70,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:71,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:84,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 1
    returnType: "double"
    argCount: 5
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:58,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "double"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    functionUses: 3
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:114,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 7
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,boolean)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 2
    ICount: 35
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:70"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:69"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:93"
        BranchSideFuncs:
        - "getX(int)"
        - "area2Term(double,double,double,double,boolean)"
        - "getY(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:75"
        BranchSideFuncs:
        - "getX(int)"
        - "area2Term(double,double,double,double,boolean)"
        - "getY(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:70,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:71,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:84,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].access$100(org.locationtech.jts.operation.overlayarea.GeometryArea,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 9
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.GeometryArea"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaPolygon(org.locationtech.jts.geom.Polygon)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:30,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaPolygon(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.GeometryArea"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 8
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.GeometryArea:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.GeometryArea:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:60,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:60,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.GeometryArea].areaRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:61,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.GeometryArea:62,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:293,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:295,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:299,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:304,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getEnvelope()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:304,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:304,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getEnvelope()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:304,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:308,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:232,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:293,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion$1].<init>(org.locationtech.jts.geom.Envelope,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion$1:276,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion$1].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion$1"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].access$000(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].access$100(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 23
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion$1:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion$1:281"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate(int)"
        - "access$000(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion$1:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion$1:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion$1:281"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate(int)"
        - "access$000(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion$1:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion$1:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion$1:281"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate(int)"
        - "access$000(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion$1:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion$1:289"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion$1:288"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion$1:282,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion$1:284,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].access$000(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion$1:284,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].access$100(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion$1:286,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion$1:287,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].access$000(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].intersects(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:86,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].intersects(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].intersects(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:259"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:259"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:260,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].access$100(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:86,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 263
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:263"
        BranchSideFuncs:
        - "containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:263"
        BranchSideFuncs:
        - "containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:264,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 2
    ICount: 29
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:269"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:268"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-1"
        BranchSideFuncs:
        - "getX()"
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-1"
        BranchSideFuncs:
        - "getMaxY()"
        - "getY()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:268,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:269,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:269,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:270,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:271,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:271,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:272,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion$1].isDone()"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion$1"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion$1].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion$1"
    linkageType: null
    functionLinenumber: 292
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.DefaultListModel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel,javax.swing.ListModel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel$GeometryFunctionCellRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel,org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel$1)"
    - "[javax.swing.JList].setCellRenderer(javax.swing.ListCellRenderer)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:100,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:40,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:42,1"
      Dst: "[javax.swing.DefaultListModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:44,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel,javax.swing.ListModel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:104,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel$GeometryFunctionCellRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel,org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel$1)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:106,1"
      Dst: "[javax.swing.JList].setCellRenderer(javax.swing.ListCellRenderer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JList].setSelectionMode(int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:110,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:111,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:112,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:113,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:114,1"
      Dst: "[javax.swing.JList].setSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:115,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:116,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].registerListSelectionListener(javax.swing.event.ListSelectionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ListSelectionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JList].getSelectionModel()"
    - "[javax.swing.ListSelectionModel].addListSelectionListener(javax.swing.event.ListSelectionListener)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:133,1"
      Dst: "[javax.swing.JList].getSelectionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:133,1"
      Dst: "[javax.swing.ListSelectionModel].addListSelectionListener(javax.swing.event.ListSelectionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].registerMouseListener(java.awt.event.MouseListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:137,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JList].getSelectedValue()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:141,1"
      Dst: "[javax.swing.JList].getSelectedValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel].populate(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:148,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:148,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:149,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionListPanel:150,1"
      Dst: "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12:186,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawRectangle()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawRectangle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawRectangle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:254,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:254,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:28"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.DissolveHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveHalfEdge"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.DissolveHalfEdge:31,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.DissolveHalfEdge].isStart()"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveHalfEdge"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.DissolveHalfEdge].setStart()"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveHalfEdge"
    linkageType: null
    functionLinenumber: 49
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnionInteracting].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnionInteracting].union()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:36,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:37,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting()"
    - "[org.locationtech.jts.operation.union.UnionInteracting].extractElements(org.locationtech.jts.geom.Geometry,boolean[],boolean)"
    - "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:60,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:64,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].extractElements(org.locationtech.jts.geom.Geometry,boolean[],boolean)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:85,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:94,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:95,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:102,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:104,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:104,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].extractElements(org.locationtech.jts.geom.Geometry,boolean[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:115,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:119,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:121,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:75,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:75,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:76,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:103,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:104,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:120,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:145,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:147,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:148,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:151,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:154,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:159,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting()"
    - "[org.locationtech.jts.operation.union.UnionInteracting].extractElements(org.locationtech.jts.geom.Geometry,boolean[],boolean)"
    - "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:60,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:64,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].extractElements(org.locationtech.jts.geom.Geometry,boolean[],boolean)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:85,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:94,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:95,1"
      Dst: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].computeInteracting(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:102,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:104,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:104,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.UnionInteracting].extractElements(org.locationtech.jts.geom.Geometry,boolean[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnionInteracting"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnionInteracting:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnionInteracting:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:115,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:119,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.UnionInteracting:121,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    linkageType: null
    functionLinenumber: 20
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:21,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:26,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.geom.LineSegment)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:38,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:40,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].<init>(java.util.List)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:41,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].<init>(java.util.List)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:42,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improve()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveScan(java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:54,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveScan(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveScan(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveNonDelaunay(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:72,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:73,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:77,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveNonDelaunay(org.locationtech.jts.triangulate.tri.Tri,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].improveNonDelaunay(org.locationtech.jts.triangulate.tri.Tri,int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].oppVertex(int)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isConvex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isDelaunay(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.tri.Tri].flip(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:97,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:105,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:107,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:108,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:109,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].oppVertex(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:117,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isConvex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:127,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isDelaunay(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:128,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].flip(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isConvex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:148,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isDelaunay(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isInCircle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:167,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isInCircle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.polygon.TriDelaunayImprover].isInCircle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.TriDelaunayImprover:183,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:67,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:69,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:70,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildSegmentIndex(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildVertexIndex(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:85,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:90,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:94,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:95,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildSegmentIndex(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:96,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildVertexIndex(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildSegmentIndex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:339,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:341,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:342,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:346,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:350,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:351,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildVertexIndex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - "[org.locationtech.jts.math.MathUtil].shuffle(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:357,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:358,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:360,1"
      Dst: "[org.locationtech.jts.math.MathUtil].shuffle(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:363,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:363,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:104,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].shuffle(int)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Random].<init>(long)"
    - "[java.util.Random].nextInt(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:209,1"
      Dst: "[java.util.Random].<init>(long)"
    - Src: "org.locationtech.jts.math.MathUtil:215,1"
      Dst: "[java.util.Random].nextInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 6
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:171"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:180"
        BranchSideFuncs:
        - "findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:163,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:172,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:175,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:180,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.operation.overlayarea.OverlayArea$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:105,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:107,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.operation.overlayarea.OverlayArea$1)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:108,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:100,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:100,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.operation.overlayarea.OverlayArea$1)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    - "org.locationtech.jts.operation.overlayarea.OverlayArea$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:112,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:112,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildSegmentIndex(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildVertexIndex(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:85,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:90,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:94,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:95,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildSegmentIndex(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:96,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildVertexIndex(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:100,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:100,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.operation.overlayarea.OverlayArea$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:105,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:107,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.operation.overlayarea.OverlayArea$1)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:108,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionAreaPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 11
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:126"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:135"
        BranchSideFuncs:
        - "interacts(org.locationtech.jts.geom.Geometry)"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:127"
        BranchSideFuncs:
        - "intersectionArea(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:126"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:124,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:127,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:127,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:128,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:129,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:100,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:100,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 138
    functionDepth: 10
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersections(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 2
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:155"
        BranchSideFuncs:
        - "areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:154"
        BranchSideFuncs:
        - "areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
        - "getEnvelopeInternal()"
        - "areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:139,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersections(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:149,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:155,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:157,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:158,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersections(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 7
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].getArea()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:229"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:219"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:211,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:213,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:216,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:217,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:224,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:225,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:226,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:227,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor:237,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:241,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].getArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 4
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:175"
        BranchSideFuncs:
        - "areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
        - "getEnvelopeInternal()"
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:171,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:171,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:176,1"
      Dst: "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 3
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].area(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 13
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:196"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:198"
        BranchSideFuncs:
        - "area(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:192,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:195,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:197,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:199,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].area(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 740
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(double,double)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:741,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Polygon].getArea()"
    - "[org.locationtech.jts.geom.GeometryCollection].getArea()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:206"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "ofRing(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:205"
        BranchSideFuncs:
        - "getArea()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:204,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:204,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:206,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator:185,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 9
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:289"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:288"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:305"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:297"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:291"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:290"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:299"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:298"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:300"
        BranchSideFuncs:
        - "area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:299"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:290,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:291,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:293,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:294,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:296,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:298,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:301,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 13
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:82"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
        - "getLocation()"
        - "<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:83,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:85,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:86,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:43,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "double"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    functionUses: 3
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:114,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 9
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 1
    ICount: 46
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:313"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:312"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "getVertices(org.locationtech.jts.geom.Geometry)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:329"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getData()"
        - "locate(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:328"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:328"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:323"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:322"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:324"
        BranchSideFuncs:
        - "area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:323"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:314,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:315,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:317,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:318,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:318,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:318,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:319,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:319,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:320,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:322,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:323,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:325,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].getVertices(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 332
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:334,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:334,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:381,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:382,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 138
    functionDepth: 10
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersections(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 2
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:155"
        BranchSideFuncs:
        - "areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:154"
        BranchSideFuncs:
        - "areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
        - "getEnvelopeInternal()"
        - "areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:139,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersections(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:149,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:155,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:157,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:158,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaContainedOrDisjoint(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 4
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:175"
        BranchSideFuncs:
        - "areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
        - "getEnvelopeInternal()"
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:171,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:171,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:176,1"
      Dst: "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForContainedGeom(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.PointOnGeometryLocator)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 3
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].area(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 13
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:196"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:198"
        BranchSideFuncs:
        - "area(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:192,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:195,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:197,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:199,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].area(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Polygon].getArea()"
    - "[org.locationtech.jts.geom.GeometryCollection].getArea()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:206"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "ofRing(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:205"
        BranchSideFuncs:
        - "getArea()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:204,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:204,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:206,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersections(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 7
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].getArea()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:229"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:219"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:211,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:213,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:216,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:217,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:224,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:225,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:226,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:227,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 253
    functionDepth: 6
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 26
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:269"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:269"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:254,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:255,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:270,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:272,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:275,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:79,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "double"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    functionUses: 3
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:114,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVertices(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 9
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:289"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:288"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:305"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:297"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:291"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:290"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:299"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:298"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:300"
        BranchSideFuncs:
        - "area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:299"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:290,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:291,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:293,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:294,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:296,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:298,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:301,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForInteriorVerticesIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree,org.locationtech.jts.geom.Envelope,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 312
    functionDepth: 9
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 1
    ICount: 46
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:313"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:312"
        BranchSideFuncs:
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "getVertices(org.locationtech.jts.geom.Geometry)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:329"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getData()"
        - "locate(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:328"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:328"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:323"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:322"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:324"
        BranchSideFuncs:
        - "area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:323"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:314,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:315,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:317,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:318,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:318,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:318,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:319,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:319,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:320,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:322,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:323,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:325,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].getVertices(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 332
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:334,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:334,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildSegmentIndex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:339,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:341,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:342,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:346,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:350,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:351,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].buildVertexIndex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - "[org.locationtech.jts.math.MathUtil].shuffle(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:357,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:358,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:360,1"
      Dst: "[org.locationtech.jts.math.MathUtil].shuffle(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:363,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:363,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$100(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 12
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionAreaPolygon(org.locationtech.jts.geom.Polygon)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:64,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionAreaPolygon(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionAreaPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 11
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:126"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:135"
        BranchSideFuncs:
        - "interacts(org.locationtech.jts.geom.Geometry)"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:127"
        BranchSideFuncs:
        - "intersectionArea(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:126"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:124,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].interacts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:127,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:127,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionArea(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:128,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:129,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$200(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 7
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:64,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 253
    functionDepth: 6
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 26
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:269"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:269"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getIntersection(int)"
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:254,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:255,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:270,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:272,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:275,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:77,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:77,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:109,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:112,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinates].create(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:123,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:127,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:137,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:142,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinateCopy(int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:153,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:159,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:160,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:161,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:164,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinateCopy(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 172
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getMeasures()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 178
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 62
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinateCopy(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:200,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:201,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 12
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getX(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 215
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getY(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getZ(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 230
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].hasZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:234"
        BranchSideFuncs:
        - "getZ()"
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:233"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:231,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].hasZ()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:232,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getM(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].hasM()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    - "[org.locationtech.jts.geom.Coordinate].getM()"
    - "[org.locationtech.jts.geom.CoordinateXYM].getM()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:247"
        BranchSideFuncs:
        - "getM()"
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:243,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].hasM()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:244,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getM()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 255
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXY].getOrdinate(int)"
    functionUses: 28
    ICount: 16
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:260,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[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: 5
    ICount: 17
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:236,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].clone()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:271,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 11
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:284"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:279,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:281,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:282,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:285,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 292
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 58
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 11
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:284"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:279,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:281,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:282,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:285,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 292
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 58
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 300
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].setOrdinate(int,double)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setOrdinate(int,double)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].setOrdinate(int,double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setOrdinate(int,double)"
    functionUses: 14
    ICount: 17
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:309,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setOrdinate(int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].setOrdinate(int,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 253
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].setZ(double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setZ(double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[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: 6
    ICount: 19
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:262,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].expandEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 323
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:325,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toString()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    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.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:337,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:338,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:339,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:341,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:345,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Edge].updateIM(org.locationtech.jts.geomgraph.Label,org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    functionUses: 2
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:44"
        BranchSideFuncs:
        - "getLocation(int,int)"
        - "setAtLeastIfValid(int,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:39,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:39,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:40,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 22
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:124,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:246"
        BranchSideFuncs:
        - "setAtLeast(int,int,int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:245"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:246"
        BranchSideFuncs:
        - "setAtLeast(int,int,int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:245"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:244,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Label].isArea()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:173"
        BranchSideFuncs:
        - "isArea()"
    - Branch String: "org.locationtech.jts.geomgraph.Label:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:173"
        BranchSideFuncs:
        - "isArea()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:174,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].<init>(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Depth].<init>()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    functionUses: 5
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:56,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:48,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].<init>(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.Edge:52,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:62,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].setName(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:74"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:81,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Depth"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 94
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].setDepthDelta(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 95
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getMaximumSegmentIndex()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getMonotoneChainEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.index.MonotoneChainEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].<init>(org.locationtech.jts.geomgraph.Edge)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:106,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainEdge].<init>(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isClosed()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:112,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isCollapsed()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:124"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:123"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geomgraph.Edge:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:122,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.geomgraph.Edge:124,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCollapsedEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 5
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].toLineLabel(org.locationtech.jts.geomgraph.Label)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:132,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].toLineLabel(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.geomgraph.Edge:132,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isIsolated()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 141
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 153
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.geomgraph.Edge].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:154,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.geomgraph.Edge:155,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 169
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getEdgeDistance(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:191"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:190"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int,double)"
    - Branch String: "org.locationtech.jts.geomgraph.Edge:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:190"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int,double)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:170,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.Edge:172,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getEdgeDistance(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:182,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.Edge:191,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].add(org.locationtech.jts.geom.Coordinate,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].computeIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].updateIM(org.locationtech.jts.geomgraph.Label,org.locationtech.jts.geom.IntersectionMatrix)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:202,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].updateIM(org.locationtech.jts.geomgraph.Label,org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].updateIM(org.locationtech.jts.geomgraph.Label,org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    functionUses: 2
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:44"
        BranchSideFuncs:
        - "getLocation(int,int)"
        - "setAtLeastIfValid(int,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:39,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:39,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:40,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Edge].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 42
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:225"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.Edge:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:223,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.Edge].hashCode()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].hashCode()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:245,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.Edge:249,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].hashCode()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:462,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:475,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:270"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:266,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Edge].toString()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    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].toString()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:279"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:275,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:276,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Edge:276,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.Edge:280,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.Edge:282,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.Edge:282,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Edge].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:290"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Edge:291,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.Edge:293,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.Edge:293,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Edge].printReverse(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:297,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:297,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Edge:297,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.Edge:297,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Edge:299,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.Edge:301,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8:147,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbWKTFormatted_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbWKTFormatted_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbWKTFormatted_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKT(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:249,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:249,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKT(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKT(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].toString()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].setFormatted(boolean)"
    - "[org.locationtech.jts.io.WKTWriter].setMaxCoordinatesPerLine(int)"
    - "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:35"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:38,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:39,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].setFormatted(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:40,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].setMaxCoordinatesPerLine(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:41,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:245,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].setFormatted(boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].setMaxCoordinatesPerLine(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:382,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:385,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:388,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:390,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:265,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JTextArea].append(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[javax.swing.JTextArea].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19:236,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeEditVertex()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeEditVertex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeEditVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineSequencer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer$1:167,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer$1].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer$1"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].access$000(org.locationtech.jts.operation.linemerge.LineSequencer,org.locationtech.jts.geom.LineString)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer$1:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer$1:172"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.operation.linemerge.LineSequencer,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer$1:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer$1:170,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].access$000(org.locationtech.jts.operation.linemerge.LineSequencer,org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].access$000(org.locationtech.jts.operation.linemerge.LineSequencer,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineSequencer"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].addLine(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:79,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].addLine(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].addLine(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:180"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:179"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geom.LineString)"
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:178,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:180,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeGraph"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.linemerge.LineMergeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.linemerge.LineMergeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    functionUses: 2
    ICount: 29
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeGraph:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:41"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeGraph:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:46"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
        - "<init>(org.locationtech.jts.geom.LineString)"
        - "add(org.locationtech.jts.planargraph.Edge)"
        - "setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
        - "getNode(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:40,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:42,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:42,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:49,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:51,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:55,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:56,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:57,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 7
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:406"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:405"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:405,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:406,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:407,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeGraph"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeGraph:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:67"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "add(org.locationtech.jts.planargraph.Node)"
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:61,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:63,1"
      Dst: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:64,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:56,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].<init>()"
    - Src: "org.locationtech.jts.planargraph.Node:56,1"
      Dst: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:39,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    - "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 2
    ICount: 28
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:72,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:76,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:80,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:81,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].<init>(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeEdge"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Edge].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeEdge:28,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].<init>()"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:39,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].setEdge(org.locationtech.jts.planargraph.Edge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].setSym(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionUses: 2
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:59,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].setEdge(org.locationtech.jts.planargraph.Edge)"
    - Src: "org.locationtech.jts.planargraph.Edge:61,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].setSym(org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.planargraph.Edge:63,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.planargraph.Edge:63,1"
      Dst: "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:42,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.geom.MultiLineString:42,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:55,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 44
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].hasDimension(int)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiLineString:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:62"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiLineString].getBoundaryDimension()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].isClosed()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiLineString:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:67,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.MultiLineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    functionUses: 1
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiLineString:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.MultiLineString:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:86"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.MultiLineString:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - Src: "org.locationtech.jts.geom.MultiLineString:82,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 56
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:96"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.MultiLineString].getGeometryType()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    functionUses: 1
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiLineString:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.MultiLineString:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:86"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.MultiLineString:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - Src: "org.locationtech.jts.geom.MultiLineString:82,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.MultiLineString].getBoundary()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:98,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.MultiLineString:98,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:114,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:124,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:126,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.MultiLineString].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPoint].getBoundary()"
    - "[org.locationtech.jts.geom.Polygon].getBoundary()"
    - "[org.locationtech.jts.geom.LineString].getBoundary()"
    - "[org.locationtech.jts.geom.GeometryCollection].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPolygon].getBoundary()"
    - "[org.locationtech.jts.geom.Point].getBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getBoundary()"
    functionUses: 3
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:137"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:139"
        BranchSideFuncs:
        - "getBoundary()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "getBoundary()"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:137,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:138,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.LineString].getStartPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.LineString].getEndPoint()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:215"
        BranchSideFuncs:
        - "getEmptyMultiPoint()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:214"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:215"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:221"
        BranchSideFuncs:
        - "createMultiPoint()"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:211,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:212,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:215,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:217,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:219,1"
      Dst: "[org.locationtech.jts.geom.LineString].getStartPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:227,1"
      Dst: "[org.locationtech.jts.geom.LineString].getEndPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:225,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:144,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 388
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:389,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getStartPoint()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getPointN(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:138"
        BranchSideFuncs:
        - "getPointN(int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:136,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:139,1"
      Dst: "[org.locationtech.jts.geom.LineString].getPointN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getPointN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.LineString:132,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.geom.LineString:132,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getEndPoint()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getPointN(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:145"
        BranchSideFuncs:
        - "getNumPoints()"
        - "getPointN(int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:143,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:146,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:146,1"
      Dst: "[org.locationtech.jts.geom.LineString].getPointN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - "[org.locationtech.jts.operation.BoundaryOp].computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:153"
        BranchSideFuncs:
        - "getEmptyMultiPoint()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:152"
        BranchSideFuncs:
        - "computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:160"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:159"
        BranchSideFuncs:
        - "createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:150,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:153,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:157,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:160,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.operation.BoundaryOp].addEndpoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 41
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:187"
        BranchSideFuncs:
        - "getGeometryN(int)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:186"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:182"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "addEndpoint(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:196"
        BranchSideFuncs:
        - "next()"
        - "isInBoundary(int)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:195"
        BranchSideFuncs:
        - "toCoordinateArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:177,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:178,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:179,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:180,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:181,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:183,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:183,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].addEndpoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:187,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:187,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:187,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:188,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:189,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:191,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:192,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:192,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:196,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].addEndpoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.Counter].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:206"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:201,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:203,1"
      Dst: "[org.locationtech.jts.operation.Counter].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:204,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.Counter].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.Counter"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.Counter:238,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiLineString].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:111,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 291
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:292,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].reverseInternal()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].reverse()"
    - "[org.locationtech.jts.geom.Point].reverse()"
    - "[org.locationtech.jts.geom.MultiPolygon].reverse()"
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    - "[org.locationtech.jts.geom.MultiLineString].reverse()"
    - "[org.locationtech.jts.geom.MultiPoint].reverse()"
    - "[org.locationtech.jts.geom.LineString].reverse()"
    - "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    - "[org.locationtech.jts.geom.Polygon].reverse()"
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 18
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiLineString:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:118"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    - Src: "org.locationtech.jts.geom.MultiLineString:119,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:55,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].copyInternal()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiLineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:126"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:125,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.MultiLineString:127,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:55,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiLineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiLineString:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.MultiLineString:133"
        BranchSideFuncs:
        - "equalsExact(org.locationtech.jts.geom.Geometry,double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiLineString:131,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.MultiLineString:134,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.MultiPolygon].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Polygon].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.MultiPoint].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.MultiLineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.LineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Point].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 5
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:185"
        BranchSideFuncs:
        - "equalsExact(org.locationtech.jts.geom.Geometry,double)"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:181,1"
      Dst: "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.MultiLineString].getTypeCode()"
    functionSourceFile: "org.locationtech.jts.geom.MultiLineString"
    linkageType: null
    functionLinenumber: 137
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionReducer"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setAreaResultOnly(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PrecisionReducer:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionReducer:62"
        BranchSideFuncs:
        - "setAreaResultOnly(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionReducer:61"
        BranchSideFuncs:
        - "getResult()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:59,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setAreaResultOnly(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:66,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:387,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setAreaResultOnly(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 426
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionReducer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionReducer"
    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: "org.locationtech.jts.operation.overlayng.PrecisionReducer:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel,org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:407,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].mouseEntered(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].isFocusLayer()"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].access$300()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JComponent].revalidate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:413"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:412,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].isFocusLayer()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:413,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].access$300()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:413,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:415,1"
      Dst: "[javax.swing.JComponent].revalidate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].isFocusLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].access$300()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].mouseExited(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].isFocusLayer()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JComponent].revalidate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:420"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:419"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:419,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].isFocusLayer()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:420,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:422,1"
      Dst: "[javax.swing.JComponent].revalidate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].isFocusLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover].clean(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover].getResult()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:47,1"
      Dst: "[org.locationtech.jtslab.clean.InvalidHoleRemover].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:48,1"
      Dst: "[org.locationtech.jtslab.clean.InvalidHoleRemover].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover].getResult()"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.InvalidHoleRemover$1)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:69,1"
      Dst: "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.InvalidHoleRemover$1)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:69,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.InvalidHoleRemover$1)"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtslab.clean.InvalidHoleRemover$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp:72,1"
      Dst: "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>()"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp"
    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: "org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp:72,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover].getResult()"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.InvalidHoleRemover$1)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:69,1"
      Dst: "[org.locationtech.jtslab.clean.InvalidHoleRemover$InvalidHoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.InvalidHoleRemover$1)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover:69,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.OrFilter].<init>(org.jdom2.filter.Filter,org.jdom2.filter.Filter)"
    functionSourceFile: "org.jdom2.filter.OrFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.filter.Filter"
    - "org.jdom2.filter.Filter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.OrFilter:86"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:87"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.OrFilter:86"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.OrFilter:86"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:89"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.OrFilter:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.OrFilter:85,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    - Src: "org.jdom2.filter.OrFilter:87,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.OrFilter].filter(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.OrFilter"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.jdom2.Content"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].matches(java.lang.Object)"
    - "[org.jdom2.filter.Filter].matches(java.lang.Object)"
    functionUses: 9
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.filter.OrFilter:95"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:96"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.OrFilter:95"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.OrFilter:95"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:98"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.OrFilter:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.OrFilter:95,1"
      Dst: "[org.jdom2.filter.Filter].matches(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.OrFilter].equals(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.OrFilter"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.NegateFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ElementFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ClassFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.AttributeFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.AndFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.OrFilter].equals(java.lang.Object)"
    - "[org.jdom2.filter.ContentFilter:org.jdom2.filter.TextOnlyFilter].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 10
    ICount: 25
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "org.jdom2.filter.OrFilter:103"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:107"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.OrFilter:106"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.OrFilter:107"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:114"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.jdom2.filter.OrFilter:113"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.OrFilter:109"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:107"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.jdom2.filter.OrFilter:109"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:110"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.OrFilter:109"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:113"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.OrFilter:109"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.OrFilter:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.OrFilter:109,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.filter.OrFilter].hashCode()"
    functionSourceFile: "org.jdom2.filter.OrFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.OrFilter:119,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.OrFilter].toString()"
    functionSourceFile: "org.jdom2.filter.OrFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.OrFilter:124,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.jdom2.filter.OrFilter:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.filter.OrFilter:124,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.jdom2.filter.OrFilter:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:117,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:118,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:133"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:128,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:128,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:129,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter:130,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter].getLinework()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].<init>()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    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: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:392,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setBase(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getBase()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setCentre(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:406,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setSize(double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getMinSize()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:419,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setWidth(double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getWidth()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getHeight()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setHeight(double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:429,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:430,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:431,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:431,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:431,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:432,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:432,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:439"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:438"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:442"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:437,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$3].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$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: "org.locationtech.jtstest.function.TriangleFunctions$3:67,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$3].map(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$3"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].access$000(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$3:69,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].access$000(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$3:70,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$3:71,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$3:72,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].access$000(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 22
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:23,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.TriangleFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:120,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].subtract(double)"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(double)"
    - "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].doubleValue()"
    - "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 42
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:223,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.geom.Triangle:223,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(double)"
    - Src: "org.locationtech.jts.geom.Triangle:228,1"
      Dst: "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:228,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(double)"
    - Src: "org.locationtech.jts.geom.Triangle:229,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.geom.Triangle:229,1"
      Dst: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].doubleValue()"
    - Src: "org.locationtech.jts.geom.Triangle:237,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].subtract(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 410
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].add(double)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:411,1"
      Dst: "[org.locationtech.jts.math.DD].add(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].add(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 329
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:234,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 358
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 875
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:876,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:876,1"
      Dst: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:465"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
      - BranchSide: "org.locationtech.jts.math.DD:464"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 425
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 7
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:427"
        BranchSideFuncs:
        - "selfAdd(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:426"
        BranchSideFuncs:
        - "selfAdd(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:426,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:427,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].multiply(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 475
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:477"
        BranchSideFuncs:
        - "selfMultiply(double,double)"
        - "copy(org.locationtech.jts.math.DD)"
      - BranchSide: "org.locationtech.jts.math.DD:476"
        BranchSideFuncs:
        - "selfMultiply(double,double)"
        - "copy(org.locationtech.jts.math.DD)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:476,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.math.DD:476,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:477,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:477,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].createNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:136,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 510
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].sqr()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 747
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:748,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:319,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:319,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 343
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:344,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 374
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 530
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 42
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:539,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:200,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:201,1"
      Dst: "[org.locationtech.jts.math.DD].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].negate()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].negate()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 451
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:453"
        BranchSideFuncs:
        - "<init>(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:452"
        BranchSideFuncs:
        - "<init>(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:452,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:453,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].doubleValue()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 926
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:84"
        BranchSideFuncs:
        - "model()"
        - "getGeometryFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:81"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.PrecisionModel)"
        - "getPrecisionModel()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:77,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:77,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:102,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:56,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:57,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:341,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:343,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:35,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:41,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].createAOI(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].createAOI(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].mousePressed(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelCoordinate(java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].getModelSnapTolerance()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.awt.event.InputEvent].isControlDown()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].redrawIndicator()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:63,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelCoordinate(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].getModelSnapTolerance()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:70,1"
      Dst: "[java.awt.event.InputEvent].isControlDown()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].redrawIndicator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:56,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:57,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].mouseReleased(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].clearIndicator()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelCoordinate(java.awt.Point)"
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelSnapped(java.awt.geom.Point2D)"
    - "[java.awt.event.InputEvent].isControlDown()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].execute(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].clearIndicator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelCoordinate(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:86,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelSnapped(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:87,1"
      Dst: "[java.awt.event.InputEvent].isControlDown()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].execute(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].execute(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:93,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:94,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:95,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:236,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:237,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].isEdited()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:38,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:40,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].isEdited()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].isEdited()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:31,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:32,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].save(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].save(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:28,1"
      Dst: "[java.util.Vector].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].save(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].push(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:23"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:24"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:23"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:24,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].execute(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:93,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:94,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:95,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].mouseDragged(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelSnapped(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].redrawIndicator()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:107,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelSnapped(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.IndicatorTool].redrawIndicator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getShape()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.awt.Shape"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    - "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    - "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].boxTarget(int,int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:115,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:116,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:116,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:116,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:118,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:120,1"
      Dst: "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:121,1"
      Dst: "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].boxTarget(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.awt.GeometryCollectionShape].<init>()"
    functionSourceFile: "org.locationtech.jts.awt.GeometryCollectionShape"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.GeometryCollectionShape:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.awt.GeometryCollectionShape:34,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.GeometryCollectionShape].add(java.awt.Shape)"
    functionSourceFile: "org.locationtech.jts.awt.GeometryCollectionShape"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Shape"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.GeometryCollectionShape:40,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].boxTarget(int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.Rectangle"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].box(org.locationtech.jts.geom.Envelope,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:142,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].box(org.locationtech.jts.geom.Envelope,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].box(org.locationtech.jts.geom.Envelope,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Rectangle"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toView(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.lang.Math].abs(double)"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:147,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:147,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:151,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:151,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:152,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:153,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].boxTarget(int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.Rectangle"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].box(org.locationtech.jts.geom.Envelope,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].geomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:142,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].box(org.locationtech.jts.geom.Envelope,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].box(org.locationtech.jts.geom.Envelope,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Rectangle"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toView(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.lang.Math].abs(double)"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:147,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:147,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:151,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:151,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:152,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:153,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.GeometryDataUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryDataUtil"
    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: "org.locationtech.jtstest.util.GeometryDataUtil:17,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.GeometryDataUtil].setComponentDataToIndex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryDataUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.GeometryDataUtil:21"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryDataUtil:24"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.GeometryDataUtil:21,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.util.GeometryDataUtil:22,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.util.GeometryDataUtil:23,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.GeometryDataUtil:23,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.GeometryDataUtil:23,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.util.GeometryDataUtil:23,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.GeometryDataUtil:23,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:31,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:28,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:32,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:32,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:33,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].setCellInsets(java.awt.Insets)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Insets"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].label(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JLabel"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:40,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRowInternal(java.lang.String,javax.swing.JComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "javax.swing.JComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].gbc(int,int,int,double)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:45,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].gbc(int,int,int,double)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:46,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRow(java.lang.String,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].label(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRowInternal(java.lang.String,javax.swing.JComponent)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:52,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:53,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:53,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:55,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:55,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:55,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].label(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRowInternal(java.lang.String,javax.swing.JComponent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].gbc(int,int,int,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.GridBagConstraints"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LabelComponentsPanel:80,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jts.geom.GeometryCollection,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].getShapeType()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].getLength(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].getShapeType()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:90,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].getLength(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].setFileLength(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getBounds()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].toString()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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()"
    - "[java.lang.String].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:117,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:117,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:117,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:117,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:117,1"
      Dst: "[java.lang.String].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryTreePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:96,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel$1].mouseClicked(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[java.awt.event.MouseEvent].getClickCount()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:101,1"
      Dst: "[java.awt.event.MouseEvent].getClickCount()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:102,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel$1:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:199,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].changedUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JTextField"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].removeUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].insertUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$3].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:211,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$3:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBits].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:110,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:113,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBits].add(double)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:118,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].add(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBits].add(double)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBits"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBits].signExpBits(long)"
    - "[org.locationtech.jts.precision.CommonBits].numCommonMostSigMantissaBits(long,long)"
    - "[org.locationtech.jts.precision.CommonBits].zeroLowerBits(long,int)"
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 2
    ICount: 27
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBits:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBits:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBits:104"
        BranchSideFuncs:
        - "signExpBits(long)"
    - Branch String: "org.locationtech.jts.precision.CommonBits:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBits:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBits:112"
        BranchSideFuncs:
        - "numCommonMostSigMantissaBits(long,long)"
        - "zeroLowerBits(long,int)"
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBits:97,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    - Src: "org.locationtech.jts.precision.CommonBits:100,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].signExpBits(long)"
    - Src: "org.locationtech.jts.precision.CommonBits:113,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].numCommonMostSigMantissaBits(long,long)"
    - Src: "org.locationtech.jts.precision.CommonBits:114,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].zeroLowerBits(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.precision.CommonBits].signExpBits(long)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBits"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBits].numCommonMostSigMantissaBits(long,long)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBits"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBits].getBit(long,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBits:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBits:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.CommonBits:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBits:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBits:53,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].getBit(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.precision.CommonBits].getBit(long,int)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBits"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBits:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBits:82"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.CommonBits].zeroLowerBits(long,int)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBits"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBits].getCommon()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:125,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].getCommon()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:126,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBits].getCommon()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBits"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBits:120,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle"
    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: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle].computeBand(org.locationtech.jts.geom.Polygon,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle].computeBand(org.locationtech.jts.geom.Polygon,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle].computeBand(org.locationtech.jts.geom.Polygon,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:56,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle].computeBand(org.locationtech.jts.geom.Polygon,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.TintBandStyle:56,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 1
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:82"
        BranchSideFuncs:
        - "<init>(double,double,double,double)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:69,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.quadtree.Root].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:103,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].depth()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].depth()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:114,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].depth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].isEmpty()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].isEmpty()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:126,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].size()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].size()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:136,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:142,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:143,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:144,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:235"
        BranchSideFuncs:
        - "getHeight()"
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:235"
        BranchSideFuncs:
        - "getHeight()"
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:238"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:232,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:236,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 1
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:82"
        BranchSideFuncs:
        - "<init>(double,double,double,double)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:69,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Root"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - "[org.locationtech.jts.index.quadtree.Node].createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Root].insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 1
    ICount: 25
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Root:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:50"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:49"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope()"
    - Branch String: "org.locationtech.jts.index.quadtree.Root:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:57"
        BranchSideFuncs:
        - "createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:56"
        BranchSideFuncs:
        - "createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.quadtree.Root:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:64"
        BranchSideFuncs:
        - "createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:63"
        BranchSideFuncs:
        - "insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Root:40,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Root:43,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.quadtree.Root:56,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - Src: "org.locationtech.jts.index.quadtree.Root:56,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:57,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:64,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Node].createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 7
    returnType: "org.locationtech.jts.index.quadtree.Node"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.quadtree.Node"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].createNode(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].insertNode(org.locationtech.jts.index.quadtree.Node)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Node:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:38"
        BranchSideFuncs:
        - "createNode(org.locationtech.jts.geom.Envelope)"
        - "insertNode(org.locationtech.jts.index.quadtree.Node)"
    - Branch String: "org.locationtech.jts.index.quadtree.Node:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:36,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Node:37,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Node:39,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].createNode(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Node:40,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].insertNode(org.locationtech.jts.index.quadtree.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:165,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:166,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.index.quadtree.Node].createNode(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 6
    returnType: "org.locationtech.jts.index.quadtree.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Key].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].<init>(org.locationtech.jts.geom.Envelope,int)"
    - "[org.locationtech.jts.index.quadtree.Key].getEnvelope()"
    - "[org.locationtech.jts.index.quadtree.Key].getLevel()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:29,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Node:30,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].getEnvelope()"
    - Src: "org.locationtech.jts.index.quadtree.Node:30,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].getLevel()"
    - Src: "org.locationtech.jts.index.quadtree.Node:30,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].<init>(org.locationtech.jts.geom.Envelope,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.index.quadtree.Key].computeKey(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Key:36,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Key:43,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].computeKey(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].computeKey(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Key].computeQuadLevel(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.index.quadtree.Key].computeKey(int,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Key:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:71"
        BranchSideFuncs:
        - "computeKey(int,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:63,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].computeQuadLevel(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Key:64,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Key:65,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].computeKey(int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Key:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.quadtree.Key].computeQuadLevel(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Key:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:28"
        BranchSideFuncs:
        - "exponent(double)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:27"
        BranchSideFuncs:
        - "getWidth()"
        - "getHeight()"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.index.quadtree.Key:29,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.index.quadtree.Key:31,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:41,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:42,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].computeKey(int,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Math].floor(double)"
    functionUses: 2
    ICount: 29
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:75,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    - Src: "org.locationtech.jts.index.quadtree.Key:76,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Key:76,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.index.quadtree.Key:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Key:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:33,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:36,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:199"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.quadtree.Key].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].getLevel()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 46
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Node].<init>(org.locationtech.jts.geom.Envelope,int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].<init>()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionUses: 2
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:50,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Node:54,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Node:54,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Node:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Node:55,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Node].insertNode(org.locationtech.jts.index.quadtree.Node)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.quadtree.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - "[org.locationtech.jts.index.quadtree.Node].createSubnode(int)"
    - "[org.locationtech.jts.index.quadtree.Node].insertNode(org.locationtech.jts.index.quadtree.Node)"
    functionUses: 2
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Node:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:108"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:107"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.index.quadtree.Node:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:108"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:107"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.index.quadtree.Node:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:119"
        BranchSideFuncs:
        - "insertNode(org.locationtech.jts.index.quadtree.Node)"
        - "createSubnode(int)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Node:108,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.quadtree.Node:111,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Node:120,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].createSubnode(int)"
    - Src: "org.locationtech.jts.index.quadtree.Node:121,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].insertNode(org.locationtech.jts.index.quadtree.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Node].createSubnode(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 2
    returnType: "org.locationtech.jts.index.quadtree.Node"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.index.quadtree.Node].<init>(org.locationtech.jts.geom.Envelope,int)"
    functionUses: 2
    ICount: 41
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Node:151,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Node:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Node:164,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.quadtree.Node:173,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Node:174,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].<init>(org.locationtech.jts.geom.Envelope,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Root].insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Root"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.quadtree.Node"
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.index.quadtree.IntervalSize].isZeroWidth(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.index.quadtree.Node].find(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].getNode(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Root:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:86"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:85"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.quadtree.Root:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:88"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:87"
        BranchSideFuncs:
        - "getNode(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Root:76,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - Src: "org.locationtech.jts.index.quadtree.Root:76,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:76,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.quadtree.Root:82,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Root:82,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Root:82,1"
      Dst: "[org.locationtech.jts.index.quadtree.IntervalSize].isZeroWidth(double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Root:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Root:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.quadtree.Root:86,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].find(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:88,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getNode(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:89,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.quadtree.IntervalSize].isZeroWidth(double,double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.IntervalSize"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.IntervalSize:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.IntervalSize:45"
        BranchSideFuncs:
        - "exponent(double)"
    - Branch String: "org.locationtech.jts.index.quadtree.IntervalSize:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.IntervalSize:45"
        BranchSideFuncs:
        - "exponent(double)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.IntervalSize:46,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.index.quadtree.IntervalSize:46,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.index.quadtree.IntervalSize:48,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.quadtree.Node].find(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "org.locationtech.jts.index.quadtree.NodeBase"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - "[org.locationtech.jts.index.quadtree.Node].find(org.locationtech.jts.geom.Envelope)"
    functionUses: 2
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Node:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Node:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:94,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Node:100,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].find(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.quadtree.Node].getNode(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 4
    returnType: "org.locationtech.jts.index.quadtree.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - "[org.locationtech.jts.index.quadtree.Node].getSubnode(int)"
    - "[org.locationtech.jts.index.quadtree.Node].getNode(org.locationtech.jts.geom.Envelope)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Node:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:75,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Node:79,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getSubnode(int)"
    - Src: "org.locationtech.jts.index.quadtree.Node:81,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getNode(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.quadtree.Node].getSubnode(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Node"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 3
    returnType: "org.locationtech.jts.index.quadtree.Node"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Node].createSubnode(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Node:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:135"
        BranchSideFuncs:
        - "createSubnode(int)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Node:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Node:133,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].createSubnode(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:156,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:157,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 1
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:82"
        BranchSideFuncs:
        - "<init>(double,double,double,double)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:69,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:193,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:194,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:195,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.index.ArrayListVisitor"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.ArrayListVisitor:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.ArrayListVisitor:26,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].visit(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:217,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].visit(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    functionSourceFile: "org.locationtech.jts.index.ArrayListVisitor"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "java.util.ArrayList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].visit(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:217,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].visit(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].queryAll()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.quadtree.NodeBase].addAllItems(java.util.List)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:225,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:226,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].addAllItems(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:235"
        BranchSideFuncs:
        - "getHeight()"
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:235"
        BranchSideFuncs:
        - "getHeight()"
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.Quadtree:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.Quadtree:238"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:232,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:236,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].getRoot()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.quadtree.Root"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.ClipFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtslab.ClipFunctions"
    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: "org.locationtech.jtslab.ClipFunctions:19,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.ClipFunctions].clipPoly(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.ClipFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.ClipFunctions:22,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:47,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:48,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:70,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:70,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel$Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:171,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:175,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:74,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:80,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:81,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:82,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipCollection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].fixTopology(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:88,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipCollection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:94,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].fixTopology(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipCollection(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].isOutsideRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipPolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:120,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isOutsideRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:122,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:122,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:124,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:125,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:126,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:128,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:130,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:133,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:136,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 15
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isOutsideRectangle(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:183,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:183,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideRectangle(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:179,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:179,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 751
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 10
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:751"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:753"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:753"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:754"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:755"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:756"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:752,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:753,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:754,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:755,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:756,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].isOutsideRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipHoles(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:141,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isOutsideRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:143,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:143,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:145,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:146,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:150,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipHoles(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:152,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:152,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].isOutsideRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRingToBox(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:168,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isOutsideRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:170,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:170,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:172,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:172,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRingToBox(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:175,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:175,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRingToBox(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRingToBoxEdge(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:207,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRingToBoxEdge(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRingToBoxEdge(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideEdge(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionPrecise(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:280"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:256,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:261,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideEdge(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:263,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionPrecise(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:264,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:268,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:268,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:281,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:282,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:283,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].isInsideEdge(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:351"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 17
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionPrecise(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:293,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:293,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:315,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:315,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:317,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:329"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:328"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:336"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:288,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipHoles(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRing(org.locationtech.jts.geom.LinearRing)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:157,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:158,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:159,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:159,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:161,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:164,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:135,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:136,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].fixTopology(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.ClipFunctions].clipPolyPrecise(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtslab.ClipFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.ClipFunctions:26,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtslab.ClipFunctions:26,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:53,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:54,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:74,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].<init>(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clip(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.clip.RectangleClipPolygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipCollection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jtslab.clip.RectangleClipPolygon].fixTopology(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clip.RectangleClipPolygon:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clip.RectangleClipPolygon:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:88,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].clipCollection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtslab.clip.RectangleClipPolygon:94,1"
      Dst: "[org.locationtech.jtslab.clip.RectangleClipPolygon].fixTopology(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtslab.ClipFunctions].clipByIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.ClipFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.ClipFunctions:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.ClipFunctions:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.ClipFunctions:31,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.ClipFunctions:32,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtslab.ClipFunctions:32,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtslab.ClipFunctions:34,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.ClipFunctions].clipByIntersectionOpt(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.ClipFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.ClipFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.ClipFunctions:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.ClipFunctions:40"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.ClipFunctions:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.ClipFunctions:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.ClipFunctions:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.ClipFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.ClipFunctions:40,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtslab.ClipFunctions:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtslab.ClipFunctions:41,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.ClipFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].<init>(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIndex(int)"
    - "[org.locationtech.jts.operation.union.DisjointSets].arrayOfValue(int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:48,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIndex(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:49,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfValue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].isInSameSubset(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:60"
        BranchSideFuncs:
        - "findRoot(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:61,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].merge(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionUses: 1
    ICount: 38
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:75,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:107"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].subsets()"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - "[org.locationtech.jts.operation.union.DisjointSets].itemsSortedBySubset()"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    - "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets,java.lang.Integer[],int[],int[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:120,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:124,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].itemsSortedBySubset()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:129,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:129,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:142,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets,java.lang.Integer[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:201,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].itemsSortedBySubset()"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Integer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIntegerIndex(int)"
    - "[org.locationtech.jts.operation.union.DisjointSets$1].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:147,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIntegerIndex(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:149,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$1].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:149,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIntegerIndex(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    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: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:174,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$1].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:149,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:107"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets,java.lang.Integer[],int[],int[])"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    - "java.lang.Integer[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:207,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].itemsSortedBySubset()"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Integer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIntegerIndex(int)"
    - "[org.locationtech.jts.operation.union.DisjointSets$1].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:147,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIntegerIndex(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:149,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$1].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:149,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIndex(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:167"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIntegerIndex(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    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: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:174,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfValue(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:183"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].access$000(org.locationtech.jts.operation.union.DisjointSets,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:36,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:107"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:22,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:24,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:35,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:37,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$1].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$1:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].btnValidate_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$1:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].btnValidate_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].btnValidate_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].getGeometry()"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].checkValid(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.valid.TopologyValidationError].toString()"
    - "[org.locationtech.jts.operation.valid.TopologyValidationError].getCoordinate()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].setFlagText(javax.swing.JTextField,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:286"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:277,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:277,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].checkValid(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:283,1"
      Dst: "[org.locationtech.jts.operation.valid.TopologyValidationError].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:284,1"
      Dst: "[org.locationtech.jts.operation.valid.TopologyValidationError].getCoordinate()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:286,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].setFlagText(javax.swing.JTextField,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.JTextField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:335,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:336,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:306"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:305"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:304,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:305,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].checkValid(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.operation.valid.TopologyValidationError"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].setSelfTouchingRingFormingHoleValid(boolean)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:299"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:297"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:294,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:296,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].setSelfTouchingRingFormingHoleValid(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:298,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].setSelfTouchingRingFormingHoleValid(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.operation.valid.TopologyValidationError"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:140,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 16
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPoint)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 46
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:159"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.Point)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:161"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPoint)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:160"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPoint)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:162"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:161"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:163"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:162"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:164"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:163"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:165"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPolygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:164"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPolygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:166"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.GeometryCollection)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:165"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.GeometryCollection)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:160,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:161,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPoint)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:162,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:163,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:164,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:165,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:166,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:169,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:169,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:169,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:177,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:177,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:178,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionUses: 7
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:73"
        BranchSideFuncs:
        - "isEmpty()"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.geom.Point:72"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:73,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.geom.Point:74,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:321"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:315"
        BranchSideFuncs:
        - "logInvalid(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:316,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:317,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    functionUses: 1
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:57,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:58,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.TopologyValidationError].<init>(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:145,1"
      Dst: "[org.locationtech.jts.operation.valid.TopologyValidationError].<init>(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.TopologyValidationError].<init>(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.TopologyValidationError"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.TopologyValidationError:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.TopologyValidationError:125"
        BranchSideFuncs:
        - "copy()"
      - BranchSide: "org.locationtech.jts.operation.valid.TopologyValidationError:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.TopologyValidationError:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.TopologyValidationError:124,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:148"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPoint)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:187,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:187,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:188,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    functionUses: 6
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:87"
        BranchSideFuncs:
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:77"
        BranchSideFuncs:
        - "getNumPoints()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 13
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingClosed(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingPointSize(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingSimple(org.locationtech.jts.geom.LinearRing)"
    functionUses: 1
    ICount: 22
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:212"
        BranchSideFuncs:
        - "checkRingClosed(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:215"
        BranchSideFuncs:
        - "checkRingPointSize(org.locationtech.jts.geom.LinearRing)"
        - "hasInvalidError()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:218"
        BranchSideFuncs:
        - "checkRingSimple(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:218"
        BranchSideFuncs:
        - "checkRingSimple(org.locationtech.jts.geom.LinearRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:210,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:210,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:211,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:213,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingClosed(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:216,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingPointSize(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:219,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingSimple(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingClosed(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:336"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:335"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:341"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:337"
        BranchSideFuncs:
        - "logInvalid(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:336"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:335,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:336,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:337,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:337,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:338,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LinearRing].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LinearRing:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:119"
        BranchSideFuncs:
        - "isClosed()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:116,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LinearRing:120,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingPointSize(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 363
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkPointSize(org.locationtech.jts.geom.LineString,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:364"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:365"
        BranchSideFuncs:
        - "checkPointSize(org.locationtech.jts.geom.LineString,int)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:364"
        BranchSideFuncs:
        - "checkPointSize(org.locationtech.jts.geom.LineString,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:364,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:365,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkPointSize(org.locationtech.jts.geom.LineString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkPointSize(org.locationtech.jts.geom.LineString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 374
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].isNonRepeatedSizeAtLeast(org.locationtech.jts.geom.LineString,int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:379"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:378"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:376"
        BranchSideFuncs:
        - "logInvalid(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:375"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:375,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isNonRepeatedSizeAtLeast(org.locationtech.jts.geom.LineString,int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:376,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:376,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:377,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isNonRepeatedSizeAtLeast(org.locationtech.jts.geom.LineString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 389
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:393"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:394"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:393"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:399"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:392,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:394,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:395,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingSimple(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 416
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findSelfIntersection(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:422"
        BranchSideFuncs:
        - "logInvalid(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:421"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:417,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findSelfIntersection(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:419,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findSelfIntersection(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 205
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].hasInvalidIntersection()"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidLocation()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:209"
        BranchSideFuncs:
        - "getInvalidLocation()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:206,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:207,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].hasInvalidIntersection()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:208,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 223
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].analyze(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:224,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:226,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].analyze(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].analyze(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 315
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].createSegmentStrings(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getPolygonRings(java.util.List)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].analyzeIntersections(java.util.List)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].hasDoubleTouch()"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getDoubleTouchLocation()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 1
    ICount: 19
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:317"
        BranchSideFuncs:
        - "analyzeIntersections(java.util.List)"
        - "createSegmentStrings(org.locationtech.jts.geom.Geometry,boolean)"
        - "getPolygonRings(java.util.List)"
        - "hasDoubleTouch()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:326"
        BranchSideFuncs:
        - "getDoubleTouchLocation()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:316,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:318,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].createSegmentStrings(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:319,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getPolygonRings(java.util.List)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:320,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].analyzeIntersections(java.util.List)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:322,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].hasDoubleTouch()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:323,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getDoubleTouchLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].createSegmentStrings(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 337
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].createSegString(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.operation.valid.PolygonRing)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].<init>(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].<init>(org.locationtech.jts.geom.LinearRing,int,org.locationtech.jts.operation.valid.PolygonRing)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 49
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:343"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:363"
        BranchSideFuncs:
        - "getGeometryN(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:362"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:352"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:351"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:354"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:353"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:344"
        BranchSideFuncs:
        - "isEmpty()"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:343"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:359"
        BranchSideFuncs:
        - "createSegString(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.operation.valid.PolygonRing)"
        - "<init>(org.locationtech.jts.geom.LinearRing,int,org.locationtech.jts.operation.valid.PolygonRing)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:358"
        BranchSideFuncs:
        - "createSegString(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.operation.valid.PolygonRing)"
        - "<init>(org.locationtech.jts.geom.LinearRing,int,org.locationtech.jts.operation.valid.PolygonRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:338,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:341,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].createSegString(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.operation.valid.PolygonRing)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:341,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:344,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:345,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:346,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:347,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:352,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:352,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].<init>(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:357,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:358,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:359,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].<init>(org.locationtech.jts.geom.LinearRing,int,org.locationtech.jts.operation.valid.PolygonRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].createSegString(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.operation.valid.PolygonRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.SegmentString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.operation.valid.PolygonRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:388"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:387"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:381,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:384,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:385,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:388,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 378
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:384"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:380,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 7
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:406"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:405"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:405,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:406,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:407,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].<init>(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:165,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].<init>(org.locationtech.jts.geom.LinearRing,int,org.locationtech.jts.operation.valid.PolygonRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "int"
    - "org.locationtech.jts.operation.valid.PolygonRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:177,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getPolygonRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:377"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getData()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:376"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:371"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:373"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:368,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:368,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:368,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:369,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:372,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:374,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].analyzeIntersections(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 329
    functionDepth: 8
    returnType: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].<init>(boolean)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:330,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].<init>(boolean)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:331,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:332,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:333,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].<init>(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:39,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].hasDoubleTouch()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 72
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getDoubleTouchLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].hasInvalidIntersection()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 229
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isInvalid()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:230,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isInvalid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isInvalid()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer:60"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidLocation()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:238,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkPointSize(org.locationtech.jts.geom.LineString,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:200"
        BranchSideFuncs:
        - "checkPointSize(org.locationtech.jts.geom.LineString,int)"
        - "hasInvalidError()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:199"
        BranchSideFuncs:
        - "checkPointSize(org.locationtech.jts.geom.LineString,int)"
        - "hasInvalidError()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:198,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:198,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:199,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:200,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkPointSize(org.locationtech.jts.geom.LineString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 228
    functionDepth: 15
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsClosed(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkAreaIntersections(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesInShell(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesNotNested(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkInteriorConnected(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    functionUses: 1
    ICount: 34
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:231"
        BranchSideFuncs:
        - "checkRingsClosed(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:234"
        BranchSideFuncs:
        - "checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:237"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry,boolean)"
        - "checkAreaIntersections(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:242"
        BranchSideFuncs:
        - "checkHolesInShell(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:245"
        BranchSideFuncs:
        - "checkHolesNotNested(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:248"
        BranchSideFuncs:
        - "checkInteriorConnected(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
        - "hasInvalidError()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:251"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:229,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:230,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:232,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsClosed(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:235,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:238,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:240,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkAreaIntersections(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:243,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesInShell(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:246,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesNotNested(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:249,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkInteriorConnected(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 2
    ICount: 20
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:327"
        BranchSideFuncs:
        - "getNumInteriorRing()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:326"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:331"
        BranchSideFuncs:
        - "getInteriorRingN(int)"
        - "checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
        - "hasInvalidError()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:326"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:325,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:325,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:325,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:326,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:327,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:328,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsClosed(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingClosed(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:347"
        BranchSideFuncs:
        - "getNumInteriorRing()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:346"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:351"
        BranchSideFuncs:
        - "checkRingClosed(org.locationtech.jts.geom.LinearRing)"
        - "getInteriorRingN(int)"
        - "hasInvalidError()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:350"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:346"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:345,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:345,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingClosed(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:346,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:347,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:348,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingPointSize(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:357"
        BranchSideFuncs:
        - "getNumInteriorRing()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:356"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:361"
        BranchSideFuncs:
        - "checkRingPointSize(org.locationtech.jts.geom.LinearRing)"
        - "getInteriorRingN(int)"
        - "hasInvalidError()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:360"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:356"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:355,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:355,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingPointSize(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:356,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:357,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:358,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkAreaIntersections(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].hasInvalidIntersection()"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidCode()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidLocation()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:408"
        BranchSideFuncs:
        - "logInvalid(int,org.locationtech.jts.geom.Coordinate)"
        - "getInvalidCode()"
        - "getInvalidLocation()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:403,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].hasInvalidIntersection()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:404,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidCode()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:405,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidLocation()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:404,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getInvalidCode()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidCode()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:234,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].getInvalidCode()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer"
    linkageType: null
    functionLinenumber: 64
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesInShell(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 436
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].findHoleOutsideShellPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:438"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:459"
        BranchSideFuncs:
        - "isEmpty()"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:444"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:446"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:451"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:450"
        BranchSideFuncs:
        - "findHoleOutsideShellPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:439"
        BranchSideFuncs:
        - "logInvalid(int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:438"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:437,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:439,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:440,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:443,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:448,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:451,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].findHoleOutsideShellPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:454,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 11
    ICount: 7
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:109"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.geom.LineString:108"
        BranchSideFuncs:
        - "getCoordinate(int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:108,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:109,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].findHoleOutsideShellPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 472
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:480"
        BranchSideFuncs:
        - "isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:483"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:473,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:477,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:481,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 751
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 10
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:751"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:753"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:753"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:754"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:755"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:756"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:752,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:753,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:754,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:755,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:756,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 10
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findNonEqualVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isIncidentSegmentInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 4
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:74"
        BranchSideFuncs:
        - "isIncidentSegmentInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
        - "findNonEqualVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:64,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:65,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:66,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocation].locateInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:75,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].findNonEqualVertex(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:76,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isIncidentSegmentInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesNotNested(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 496
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].isNested()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].getNestedPoint()"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:498"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Polygon)"
        - "isNested()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:500"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:503"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:497,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:499,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:500,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].isNested()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:502,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].getNestedPoint()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:501,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].loadIndex()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:48,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].loadIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].loadIndex()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:53,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:55,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:56,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:57,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:58,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].isNested()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 11
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.geom.Polygon:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 31
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:98"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getInteriorRingN(int)"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:77"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:76"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:87"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:90"
        BranchSideFuncs:
        - "isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:77,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:78,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:80,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:81,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:88,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:91,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester:93,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedHoleTester].getNestedPoint()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedHoleTester"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkInteriorConnected(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 529
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isInteriorDisconnected()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getDisconnectionLocation()"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:530"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:530,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isInteriorDisconnected()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:532,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getDisconnectionLocation()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:531,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isInteriorDisconnected()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 252
    functionDepth: 13
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].checkInteriorDisconnectedBySelfTouch()"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].checkInteriorDisconnectedByHoleCycle()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:262"
        BranchSideFuncs:
        - "checkInteriorDisconnectedBySelfTouch()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:261"
        BranchSideFuncs:
        - "checkInteriorDisconnectedByHoleCycle()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:261"
        BranchSideFuncs:
        - "checkInteriorDisconnectedByHoleCycle()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:257,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].checkInteriorDisconnectedBySelfTouch()"
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:262,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].checkInteriorDisconnectedByHoleCycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].checkInteriorDisconnectedBySelfTouch()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 309
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRing].findInteriorSelfNode(java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:313"
        BranchSideFuncs:
        - "findInteriorSelfNode(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:311,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].findInteriorSelfNode(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].findInteriorSelfNode(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].findInteriorSelfNode()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:127"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "findInteriorSelfNode()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:121,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:121,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:122,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].findInteriorSelfNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].findInteriorSelfNode()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 342
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.valid.PolygonRing].isShell()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].isExterior(boolean)"
    - "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].getCoordinate()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:349"
        BranchSideFuncs:
        - "isShell()"
        - "hasNext()"
        - "next()"
        - "getCoordinates()"
        - "isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:353"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:358"
        BranchSideFuncs:
        - "hasNext()"
        - "isExterior(boolean)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:357"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:350,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:350,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:351,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].isShell()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:353,1"
      Dst: "[java.util.ArrayList].iterator()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:353,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:353,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:354,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].isExterior(boolean)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:355,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].isShell()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:187"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].isExterior(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingSelfNode"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:448"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:447"
        BranchSideFuncs:
        - "isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:448"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:447"
        BranchSideFuncs:
        - "isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:448,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.PolygonNodeTopology"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 8
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.PolygonNodeTopology:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PolygonNodeTopology:87"
        BranchSideFuncs:
        - "isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:83,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isAngleGreater(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.PolygonNodeTopology:88,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isBetween(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingSelfNode"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].checkInteriorDisconnectedByHoleCycle()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 294
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRing].findHoleCycleLocation(java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:298"
        BranchSideFuncs:
        - "findHoleCycleLocation(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:297"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer:296,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].findHoleCycleLocation(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].findHoleCycleLocation(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].isInTouchSet()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].findHoleCycleLocation()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 13
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:108"
        BranchSideFuncs:
        - "isInTouchSet()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:107"
        BranchSideFuncs:
        - "findHoleCycleLocation()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:102,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:102,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:103,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].isInTouchSet()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:104,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].findHoleCycleLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].isInTouchSet()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:191"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].findHoleCycleLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 255
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRing].isInTouchSet()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    - "[org.locationtech.jts.operation.valid.PolygonRing].hasTouches()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].init(org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
    - "[org.locationtech.jts.operation.valid.PolygonRing].scanForHoleCycle(org.locationtech.jts.operation.valid.PolygonRingTouch,org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:260"
        BranchSideFuncs:
        - "setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
        - "hasTouches()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:265"
        BranchSideFuncs:
        - "init(org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:276"
        BranchSideFuncs:
        - "scanForHoleCycle(org.locationtech.jts.operation.valid.PolygonRingTouch,org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:256,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].isInTouchSet()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:261,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:263,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].hasTouches()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:266,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:267,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].init(org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:269,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:270,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:271,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].scanForHoleCycle(org.locationtech.jts.operation.valid.PolygonRingTouch,org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].hasTouches()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:204,1"
      Dst: "[java.util.Map].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].init(org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRing].getTouches()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.valid.PolygonRingTouch].getRing()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Deque].push(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:286"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
        - "next()"
        - "getTouches()"
        - "getRing()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:282,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].getTouches()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:282,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:282,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:282,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:283,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingTouch].getRing()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:283,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:284,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].getTouches()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:208,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.valid.PolygonRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].scanForHoleCycle(org.locationtech.jts.operation.valid.PolygonRingTouch,org.locationtech.jts.operation.valid.PolygonRing,java.util.Deque)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRingTouch"
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.PolygonRingTouch].getRing()"
    - "[org.locationtech.jts.operation.valid.PolygonRingTouch].getCoordinate()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].getTouches()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.PolygonRing].getTouchSetRoot()"
    - "[org.locationtech.jts.operation.valid.PolygonRing].setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Deque].push(java.lang.Object)"
    functionUses: 1
    ICount: 25
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:333"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "next()"
        - "getTouches()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:325"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:324"
        BranchSideFuncs:
        - "getTouchSetRoot()"
        - "getRing()"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRing:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:329"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRing:328"
        BranchSideFuncs:
        - "setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:299,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingTouch].getRing()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:300,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRingTouch].getCoordinate()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:307,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].getTouches()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:307,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:307,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:307,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:315,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:326,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].getTouchSetRoot()"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:329,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonRing].setTouchSetRoot(org.locationtech.jts.operation.valid.PolygonRing)"
    - Src: "org.locationtech.jts.operation.valid.PolygonRing:331,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 383
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRing].getTouchSetRoot()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRing"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.valid.PolygonRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].getDisconnectionLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer"
    linkageType: null
    functionLinenumber: 275
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 15
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsClosed(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkAreaIntersections(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesInShell(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesNotNested(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkShellsNotNested(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].checkInteriorConnected(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    functionUses: 1
    ICount: 59
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:274"
        BranchSideFuncs:
        - "checkCoordinatesValid(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:273"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry,boolean)"
        - "checkAreaIntersections(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:267"
        BranchSideFuncs:
        - "checkRingsClosed(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:270"
        BranchSideFuncs:
        - "checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:269"
        BranchSideFuncs:
        - "checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:284"
        BranchSideFuncs:
        - "checkHolesInShell(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:283"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:289"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "checkHolesNotNested(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:288"
        BranchSideFuncs:
        - "checkShellsNotNested(org.locationtech.jts.geom.MultiPolygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:283"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:291"
        BranchSideFuncs:
        - "checkInteriorConnected(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
        - "hasInvalidError()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:263,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:264,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:265,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkCoordinatesValid(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:266,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].hasInvalidError()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:268,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsClosed(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:270,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkRingsPointSize(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:274,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:276,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkAreaIntersections(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:281,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesInShell(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:286,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkHolesNotNested(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:289,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkShellsNotNested(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:292,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].checkInteriorConnected(org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].checkShellsNotNested(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 519
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].<init>(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].isNested()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getNestedPoint()"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:521"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.MultiPolygon)"
        - "isNested()"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:526"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:520,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:522,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].<init>(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:523,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].isNested()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:525,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getNestedPoint()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:524,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].logInvalid(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].<init>(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].loadIndex()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:45,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].loadIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].loadIndex()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:50,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:53,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:55,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:55,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].isNested()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 13
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getLocator(int)"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 39
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:107"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "hasNext()"
        - "iterator()"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:86"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:85"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:98"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:101"
        BranchSideFuncs:
        - "findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
        - "getLocator(int)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:86,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:88,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:90,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:90,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:92,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:99,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:102,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getLocator(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:102,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getLocator(int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:63"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:68"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "<init>(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:61,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:65,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:130"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "locate(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:142"
        BranchSideFuncs:
        - "findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:124,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:125,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:143,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 13
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:82"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
        - "getLocation()"
        - "<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:83,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:85,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:86,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 1
    ICount: 24
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:166"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:179"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:178"
        BranchSideFuncs:
        - "getCoordinateN(int)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
        BranchSideFuncs:
        - "isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:166"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:166"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:157,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:158,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:160,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:168,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:169,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:179,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getNestedPoint()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:310"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "isValidGeometry(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:306"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:305"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:307,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:307,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.TopologyValidationError].toString()"
    functionSourceFile: "org.locationtech.jts.operation.valid.TopologyValidationError"
    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)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.operation.valid.TopologyValidationError].getMessage()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.TopologyValidationError:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.TopologyValidationError:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.TopologyValidationError:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.TopologyValidationError:168,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.valid.TopologyValidationError:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.valid.TopologyValidationError:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.TopologyValidationError:168,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.valid.TopologyValidationError:169,1"
      Dst: "[org.locationtech.jts.operation.valid.TopologyValidationError].getMessage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.TopologyValidationError].getMessage()"
    functionSourceFile: "org.locationtech.jts.operation.valid.TopologyValidationError"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.TopologyValidationError].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.valid.TopologyValidationError"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].setFlagText(javax.swing.JTextField,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JTextField"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:329"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:330,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:331,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].setMarkPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.event.ValidPanelEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].fireSetHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel:345"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:344,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:346,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:347,1"
      Dst: "[org.locationtech.jtstest.testbuilder.event.ValidPanelEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:347,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].fireSetHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    - "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - "[javax.swing.Timer].setInitialDelay(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:36,1"
      Dst: "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:52,1"
      Dst: "[javax.swing.Timer].setInitialDelay(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].componentResized()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].render()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Timer].stop()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].cancel()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].initImage()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getRenderer()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].<init>(org.locationtech.jtstest.testbuilder.ui.render.Renderer,java.awt.Image)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    - "[javax.swing.Timer].start()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:78,1"
      Dst: "[javax.swing.Timer].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].cancel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].initImage()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getRenderer()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].<init>(org.locationtech.jtstest.testbuilder.ui.render.Renderer,java.awt.Image)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:85,1"
      Dst: "[javax.swing.Timer].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].cancel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.Renderer].cancel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker:156,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.Renderer].cancel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].initImage()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].erase(java.awt.Image)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].createPanelImage(javax.swing.JPanel)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].erase(java.awt.Image)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].createPanelImage(javax.swing.JPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].erase(java.awt.Image)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Image"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Image].getWidth(java.awt.image.ImageObserver)"
    - "[java.awt.Image].getHeight(java.awt.image.ImageObserver)"
    - "[java.awt.Image].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getBackgroundColor()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:103,1"
      Dst: "[java.awt.Image].getWidth(java.awt.image.ImageObserver)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:104,1"
      Dst: "[java.awt.Image].getHeight(java.awt.image.ImageObserver)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:106,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getBackgroundColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:107,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:109,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:110,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getBackgroundColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:173,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].createPanelImage(javax.swing.JPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Image"
    argCount: 1
    argTypes:
    - "javax.swing.JPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getWidth()"
    - "[javax.swing.JComponent].getHeight()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:98,1"
      Dst: "[javax.swing.JComponent].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:98,1"
      Dst: "[javax.swing.JComponent].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:98,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getRenderer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.Renderer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:575,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].isRevealingTopology()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$000(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].getTopologyStretchSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setStretchSize(double)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setNearnessTolerance(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isViewPerformant()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:589"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:597"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:596"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:588,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:589,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].isRevealingTopology()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:590,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:590,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:591,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$000(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:591,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].getTopologyStretchSize()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:591,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:591,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setStretchSize(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:592,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setNearnessTolerance(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:593,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:593,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer:595,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isViewPerformant()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].isRevealingTopology()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.DisplayParameters"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$000(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].getTopologyStretchSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.DisplayParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setStretchSize(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setNearnessTolerance(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].isViewPerformant()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryStretcherView:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryStretcherView].updateCache()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].<init>(org.locationtech.jtstest.testbuilder.ui.render.Renderer,java.awt.Image)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.Renderer"
    - "java.awt.Image"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].initImage()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].erase(java.awt.Image)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].createPanelImage(javax.swing.JPanel)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].erase(java.awt.Image)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].createPanelImage(javax.swing.JPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].createPanelImage(javax.swing.JPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Image"
    argCount: 1
    argTypes:
    - "javax.swing.JPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getWidth()"
    - "[javax.swing.JComponent].getHeight()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:98,1"
      Dst: "[javax.swing.JComponent].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:98,1"
      Dst: "[javax.swing.JComponent].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:98,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].erase(java.awt.Image)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Image"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Image].getWidth(java.awt.image.ImageObserver)"
    - "[java.awt.Image].getHeight(java.awt.image.ImageObserver)"
    - "[java.awt.Image].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getBackgroundColor()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:103,1"
      Dst: "[java.awt.Image].getWidth(java.awt.image.ImageObserver)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:104,1"
      Dst: "[java.awt.Image].getHeight(java.awt.image.ImageObserver)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:106,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getBackgroundColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:107,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:109,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:110,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].drawImage(java.awt.Image,int,int,java.awt.image.ImageObserver)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:118,1"
      Dst: "[java.awt.Graphics].drawImage(java.awt.Image,int,int,java.awt.image.ImageObserver)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].paintPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:123,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].drawImage(java.awt.Image,int,int,java.awt.image.ImageObserver)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:118,1"
      Dst: "[java.awt.Graphics].drawImage(java.awt.Image,int,int,java.awt.image.ImageObserver)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].access$000(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].access$100(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].paintPanel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].paintPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].paintPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:123,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].access$200(org.locationtech.jtstest.testbuilder.ui.render.RenderManager)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.Timer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEvent:27,1"
      Dst: "[java.util.EventObject].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    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: "org.locationtech.jts.io.gml2.GMLWriter:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].<init>(boolean)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].setNamespace(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:92,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:93,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].setNamespace(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].setPrefix(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].setSrsName(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].setNamespace(boolean)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].setCustomElements(java.lang.String[])"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].setStartingIndentIndex(int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:159"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].setMaxCoordinatesPerLine(int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:170,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:183,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:185,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:188,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:190,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:201,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.Writer,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:223"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:209,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:211,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:213,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:215,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:217,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:219,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:221,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:224,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:224,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:225,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:225,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:225,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:227,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:232,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:233,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:235,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:235,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:238,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:421"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:421,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeAttributes(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeCustomElements(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:425"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:425"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:426,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:426,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:427,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:427,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:426,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:429,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeAttributes(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:431,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeCustomElements(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeAttributes(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:438"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:440"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:442,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:442,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:443,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:443,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:442,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:446,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeCustomElements(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:457"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:461"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:459,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 95
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:411"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:393"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:415"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:414"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:377,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:378,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:383,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:383,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:416,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 18
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].prefix()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].prefix()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].prefix()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:473"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:475"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:474"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:473,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:475,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:475,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:244,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:245,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:247,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:247,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:250,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:267,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:268,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:273,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:273,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:276,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:278,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:282,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:256,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:257,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:259,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:259,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:262,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:305"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:294,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:295,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:297,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:301,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:301,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:304,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:312,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:313,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:315,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:319,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:319,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:322,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:341"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:330,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:331,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:333,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:337,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:337,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:340,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:348,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:349,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:351,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:355,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:358,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:201,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.Writer,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.io.Writer].flush()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:223"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:209,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:211,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:213,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:215,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:217,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:219,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:221,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:224,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:224,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:225,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:225,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:225,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:227,1"
      Dst: "[java.io.Writer].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:232,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:233,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:235,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:235,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:238,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:244,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:245,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:247,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:247,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:250,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:256,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:257,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:259,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:259,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:262,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:267,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:268,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:273,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:273,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:276,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:278,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:282,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:305"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:294,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:295,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:297,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:301,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:301,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePoint(org.locationtech.jts.geom.Point,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:304,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:312,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:313,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:315,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:319,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:319,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:322,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:341"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:330,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:331,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:333,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:337,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:337,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:340,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:348,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:349,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:351,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:355,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer,int)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:358,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Coordinate[],java.io.Writer,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.io.Writer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionUses: 0
    ICount: 95
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:411"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:393"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:415"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:414"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:377,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:378,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:383,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:383,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:394,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:416,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 18
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].startLine(int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:421"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:421,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].startGeomTag(java.lang.String,org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeAttributes(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].writeCustomElements(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:425"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:425"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:426,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:426,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:427,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:427,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:426,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:429,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeAttributes(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:431,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].writeCustomElements(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeAttributes(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:438"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:440"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:442,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:442,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:443,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:443,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:442,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:446,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 14
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].writeCustomElements(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:457"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:461"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:459,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].endGeomTag(java.lang.String,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].prefix()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].prefix()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:466,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].prefix()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:473"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GMLWriter:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:475"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLWriter:474"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:473,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:475,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:475,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.InputStreamInStream].<init>(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jts.io.InputStreamInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.InputStreamInStream:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.InputStreamInStream].read(byte[])"
    functionSourceFile: "org.locationtech.jts.io.InputStreamInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].read(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.InputStreamInStream:32,1"
      Dst: "[java.io.InputStream].read(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].build(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.edgegraph.EdgeGraph"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].<init>()"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(java.util.Collection)"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].getGraph()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:33,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].<init>()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:34,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(java.util.Collection)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:35,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].getGraph()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:38,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraph:40,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:76,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:76,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:77,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:78,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].<init>(org.locationtech.jts.edgegraph.EdgeGraphBuilder)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:59,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].<init>(org.locationtech.jts.edgegraph.EdgeGraphBuilder)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].<init>(org.locationtech.jts.edgegraph.EdgeGraphBuilder)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder$1:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].getGraph()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.EdgeGraph"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:38,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].getGraph()"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.edgegraph.EdgeGraph"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].<init>(org.locationtech.jts.edgegraph.EdgeGraphBuilder)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:59,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].<init>(org.locationtech.jts.edgegraph.EdgeGraphBuilder)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:76,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:76,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:77,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:78,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.edgegraph.EdgeGraph].addEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:85,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].addEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].access$000(org.locationtech.jts.edgegraph.EdgeGraphBuilder,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.edgegraph.EdgeGraphBuilder"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.EdgeGraphBuilder:30,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraphBuilder].add(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:245,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$6].stateChanged(javax.swing.event.ChangeEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.SpinnerNumberModel].getNumber()"
    - "[java.lang.Number].intValue()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:247,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:247,1"
      Dst: "[javax.swing.SpinnerNumberModel].getNumber()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:247,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:249,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$6:249,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$400(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.SpinnerNumberModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:183,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double,boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setPreserveEndpoint(boolean)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplify()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:30,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:31,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:32,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setPreserveEndpoint(boolean)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:33,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplify()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:96,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setPreserveEndpoint(boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplify()"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 41
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:65"
        BranchSideFuncs:
        - "simplifySection(int,int)"
        - "<init>()"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:73"
        BranchSideFuncs:
        - "isRing(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:65"
        BranchSideFuncs:
        - "simplifySection(int,int)"
        - "<init>()"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:78"
        BranchSideFuncs:
        - "simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:77"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:78"
        BranchSideFuncs:
        - "simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:77"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:66,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:68,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:71,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:75,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:78,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    functionUses: 3
    ICount: 43
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:114"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:119"
        BranchSideFuncs:
        - "simplifySection(int,int)"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:108,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:120,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:173"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].remove(int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:85"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:94"
        BranchSideFuncs:
        - "closeRing()"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:83,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:86,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:88,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:90,1"
      Dst: "[java.util.ArrayList].remove(int)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:92,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:96,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].setPreserveEndpoint(boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplify()"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 41
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:65"
        BranchSideFuncs:
        - "simplifySection(int,int)"
        - "<init>()"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:73"
        BranchSideFuncs:
        - "isRing(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:65"
        BranchSideFuncs:
        - "simplifySection(int,int)"
        - "<init>()"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:78"
        BranchSideFuncs:
        - "simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:77"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:78"
        BranchSideFuncs:
        - "simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:77"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:66,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:68,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:71,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:74,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:75,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:78,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifyRingEndpoint(org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].remove(int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:85"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:94"
        BranchSideFuncs:
        - "closeRing()"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:83,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:86,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:88,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:90,1"
      Dst: "[java.util.ArrayList].remove(int)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:92,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    functionUses: 3
    ICount: 43
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:114"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:119"
        BranchSideFuncs:
        - "simplifySection(int,int)"
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:108,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier:120,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerLineSimplifier].simplifySection(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3].filesDropped(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:282,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:286,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File[])"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadTestCaseList(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrentTestIndex(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:279,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:280,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:281,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:281,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:282,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:283,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:283,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:283,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:286,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadTestCaseList(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:292,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:292,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:293,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:296,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrentTestIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[java.io.File].isFile()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - "[java.io.File].isDirectory()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseListFromDirectory(java.io.File)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:331"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:322,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:325,1"
      Dst: "[java.io.File].isFile()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:326,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:326,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:328,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:329,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseListFromDirectory(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.test.TestCaseList:25,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestReader].<init>()"
    - "[org.locationtech.jtstest.testrunner.TestReader].createTestRun(java.io.File,int)"
    - "[org.locationtech.jtstest.testrunner.TestReader].getParsingProblems()"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasParseErrors()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getTestCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].<init>(org.locationtech.jtstest.testrunner.TestCase)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:353"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:348,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestReader].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:349,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestReader].createTestRun(java.io.File,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:350,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestReader].getParsingProblems()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:352,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:353,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasParseErrors()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getTestCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:357,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].<init>(org.locationtech.jtstest.testrunner.TestCase)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:358,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasParseErrors()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:377"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:376"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:376"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:377,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].<init>(org.locationtech.jtstest.testrunner.TestCase)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.TestCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:40,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:245,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:39,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.test.TestCaseList:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.test.TestCaseList:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.test.TestCaseList:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:45,1"
      Dst: "[java.util.ArrayList].iterator()"
    - Src: "org.locationtech.jtstest.test.TestCaseList:45,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.test.TestCaseList:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.test.TestCaseList:46,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseListFromDirectory(java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isDirectory()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[java.io.File].listFiles()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:336,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:336,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:337,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:338,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:338,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:339,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:339,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:340,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:341,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:341,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testrunner.TestCase"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadTestCaseList(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadEditList(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:301,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadEditList(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadEditList(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:317"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:308,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:310,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:313,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:315,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:318,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.test.Testable].initGeometry()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:42,1"
      Dst: "[org.locationtech.jtstest.test.Testable].initGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:43,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:476"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:473,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:477,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].size()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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: "org.locationtech.jtstest.test.TestCaseList:33,1"
      Dst: "[java.util.ArrayList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrentTestIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    - "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:508,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:517,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:517,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:48"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:526"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:530"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:524,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:528,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:529,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:533,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:533,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:533,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.DefaultListModel].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestListPanel:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:159,1"
      Dst: "[javax.swing.DefaultListModel].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:163,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:164,1"
      Dst: "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format$DefaultCharsetEscapeStrategy].<init>(java.nio.charset.CharsetEncoder)"
    functionSourceFile: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:165,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format$DefaultCharsetEscapeStrategy].shouldEscape(char)"
    functionSourceFile: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].isHighSurrogate(char)"
    - "[java.nio.charset.CharsetEncoder].canEncode(char)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:172"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:176"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:175"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:176"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:172,1"
      Dst: "[org.jdom2.Verifier].isHighSurrogate(char)"
    - Src: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:176,1"
      Dst: "[java.nio.charset.CharsetEncoder].canEncode(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.Verifier].isHighSurrogate(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1087"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1086"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.located.LocatedComment].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Comment].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedComment:73,1"
      Dst: "[org.jdom2.Comment].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedComment].getLine()"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedComment].getColumn()"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedComment].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedComment].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedComment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:53,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:54,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer,org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:98,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:98,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:98,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:99,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:103,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:105,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer,org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:105,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer,org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:108,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:108,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].setRemoveCollapsedComponents(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].setChangePrecisionModel(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer,org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:98,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:98,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:98,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:99,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:103,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:105,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer,org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer:105,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$100(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$200(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.geom.PrecisionModel,boolean)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:29,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerCoordinateOperation].edit(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:37"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:41,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:42,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:46,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerCoordinateOperation:48,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateList:62,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:63,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:197,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].isInBoundary(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:201"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].toString()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:99,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.DocType].setElementName(java.lang.String)"
    - "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - "[org.jdom2.DocType].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:124,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.DocType:125,1"
      Dst: "[org.jdom2.DocType].setElementName(java.lang.String)"
    - Src: "org.jdom2.DocType:126,1"
      Dst: "[org.jdom2.DocType].setPublicID(java.lang.String)"
    - Src: "org.jdom2.DocType:127,1"
      Dst: "[org.jdom2.DocType].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:145,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:158,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].getElementName()"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setElementName(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.DocType:184"
      Branch Sides:
      - BranchSide: "org.jdom2.DocType:187"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DocType:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DocType:183,1"
      Dst: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - Src: "org.jdom2.DocType:185,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.DocType].getPublicID()"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setPublicID(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.DocType:213"
      Branch Sides:
      - BranchSide: "org.jdom2.DocType:216"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DocType:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DocType:212,1"
      Dst: "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - Src: "org.jdom2.DocType:214,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.DocType].getSystemID()"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setSystemID(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.DocType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.DocType:244"
      Branch Sides:
      - BranchSide: "org.jdom2.DocType:247"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DocType:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DocType:243,1"
      Dst: "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - Src: "org.jdom2.DocType:245,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.DocType].getValue()"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].getInternalSubset()"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].toString()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.output.XMLOutputter].<init>()"
    - "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.DocType)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>()"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.DocType)"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:275,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.output.Format"
    - "org.jdom2.output.support.XMLOutputProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.Format].getRawFormat()"
    - "[org.jdom2.output.Format].clone()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.XMLOutputter:266"
      Branch Sides:
      - BranchSide: "org.jdom2.output.XMLOutputter:265"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.XMLOutputter:264"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.XMLOutputter:267"
      Branch Sides:
      - BranchSide: "org.jdom2.output.XMLOutputter:266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.XMLOutputter:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:265,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:266,1"
      Dst: "[org.jdom2.output.Format].getRawFormat()"
    - Src: "org.jdom2.output.XMLOutputter:266,1"
      Dst: "[org.jdom2.output.Format].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.output.Format].getRawFormat()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.output.Format"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.Format].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format:191,1"
      Dst: "[org.jdom2.output.Format].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].<init>()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.Format].setEncoding(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format:613,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.Format:614,1"
      Dst: "[org.jdom2.output.Format].setEncoding(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].setEncoding(java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.output.Format"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.Format].chooseStrategy(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format:897,1"
      Dst: "[org.jdom2.output.Format].chooseStrategy(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].chooseStrategy(java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.output.EscapeStrategy"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    - "[java.nio.charset.Charset].newEncoder()"
    - "[org.jdom2.output.Format$DefaultCharsetEscapeStrategy].<init>(java.nio.charset.CharsetEncoder)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.Format:540"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:541"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:540"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:544"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:545"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:547"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:546"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:545"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:550"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:549"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:550"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:552"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:551"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.Format:550"
      Branch Sides:
      - BranchSide: "org.jdom2.output.Format:556"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.Format:555"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.Format:540,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.jdom2.output.Format:545,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.jdom2.output.Format:545,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.jdom2.output.Format:556,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    - Src: "org.jdom2.output.Format:556,1"
      Dst: "[java.nio.charset.Charset].newEncoder()"
    - Src: "org.jdom2.output.Format:557,1"
      Dst: "[org.jdom2.output.Format$DefaultCharsetEscapeStrategy].<init>(java.nio.charset.CharsetEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.jdom2.output.Format$DefaultCharsetEscapeStrategy].<init>(java.nio.charset.CharsetEncoder)"
    functionSourceFile: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.CharsetEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format$DefaultCharsetEscapeStrategy:165,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].clone()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: 932
    functionDepth: 0
    returnType: "org.jdom2.output.Format"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format:936,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.DocType)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.DocType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:602,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:604,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.DocType,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:608,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.DocType].clone()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "org.jdom2.DocType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].clone()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:299,1"
      Dst: "[org.jdom2.Content].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].detach()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.DocType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].detach()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:304,1"
      Dst: "[org.jdom2.Content].detach()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: 308
    functionDepth: 0
    returnType: "org.jdom2.DocType"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:309,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].getParent()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "org.jdom2.Document"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:315,1"
      Dst: "[org.jdom2.Content].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].getMinimumRectangle(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].getMinimumRectangle()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:53,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:53,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].getMinimumRectangle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:66,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].getMinimumRectangle()"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvex(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:90,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvex(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:92,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:92,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeMaximumLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvexRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:101,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:101,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:109,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:109,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:113,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeMaximumLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:116,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvexRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeMaximumLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:250,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:250,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvexRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].findFurthestVertex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.LineSegment,int,int)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distancePerpendicular(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.Rectangle].createFromSidePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:142,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:148,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].findFurthestVertex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.LineSegment,int,int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:151,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:163,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distancePerpendicular(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:179,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:175,1"
      Dst: "[org.locationtech.jts.algorithm.Rectangle].createFromSidePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].findFurthestVertex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.LineSegment,int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.LineSegment"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].orientedDistance(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].isFurtherOrEqual(double,double,int)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].nextIndex(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:184,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].orientedDistance(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:189,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].isFurtherOrEqual(double,double,int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:193,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].nextIndex(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].orientedDistance(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].distancePerpendicularOriented(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:211,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distancePerpendicularOriented(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:213,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].distancePerpendicularOriented(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distancePerpendicular(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:289,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:290,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:291,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distancePerpendicular(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:292,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].distancePerpendicular(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:271,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:272,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:273,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 2
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:219,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:219,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:182,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].isFurtherOrEqual(double,double,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[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: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].nextIndex(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:221"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:435"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:436,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.LineSegment:436,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.LineSegment:438,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:439,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Rectangle].createFromSidePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.Rectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Rectangle].computeLineEquationC(double,double,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Rectangle].createLineForStandardEquation(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.LineSegment].lineIntersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Rectangle:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Rectangle:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Rectangle:55,1"
      Dst: "[org.locationtech.jts.algorithm.Rectangle].computeLineEquationC(double,double,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:61,1"
      Dst: "[org.locationtech.jts.algorithm.Rectangle].createLineForStandardEquation(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:75,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:75,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.Rectangle:76,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].lineIntersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.algorithm.Rectangle:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Rectangle:86,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:58,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    - "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    - "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:86,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:93,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:97,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:100,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:103,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:106,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:110,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:66,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].getMinimumRectangle()"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvex(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:90,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvex(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:92,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:92,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeMaximumLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvexRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:101,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:101,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:109,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:109,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:113,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeMaximumLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:116,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvexRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeConvexRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].findFurthestVertex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.LineSegment,int,int)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distancePerpendicular(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.Rectangle].createFromSidePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:142,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:148,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].findFurthestVertex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.LineSegment,int,int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:151,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:163,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distancePerpendicular(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:179,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:175,1"
      Dst: "[org.locationtech.jts.algorithm.Rectangle].createFromSidePts(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].findFurthestVertex(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.LineSegment,int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.LineSegment"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].orientedDistance(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].isFurtherOrEqual(double,double,int)"
    - "[org.locationtech.jts.algorithm.MinimumAreaRectangle].nextIndex(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:184,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].orientedDistance(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:189,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].isFurtherOrEqual(double,double,int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:193,1"
      Dst: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].nextIndex(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].isFurtherOrEqual(double,double,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[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: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:203,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:207,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].orientedDistance(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].distancePerpendicularOriented(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:211,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distancePerpendicularOriented(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:213,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].nextIndex(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:221"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.MinimumAreaRectangle].computeMaximumLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.MinimumAreaRectangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.MinimumAreaRectangle:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.MinimumAreaRectangle:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:238,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:240,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:250,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.MinimumAreaRectangle:250,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel$1].<init>(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.RelatePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel$1:111,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel$1].insertUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel$1:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.RelatePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel$1].removeUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel$1:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.RelatePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel$1].changedUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel$1:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.RelatePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].getResultGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:59,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:60,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:61,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:88,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].getResultGeometry()"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].<init>(boolean,double)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:121,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].<init>(boolean,double)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].<init>(boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer:131,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - "[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: 55
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:120"
        BranchSideFuncs:
        - "transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:122"
        BranchSideFuncs:
        - "transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:124"
        BranchSideFuncs:
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:126"
        BranchSideFuncs:
        - "transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:128"
        BranchSideFuncs:
        - "transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:130"
        BranchSideFuncs:
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:132"
        BranchSideFuncs:
        - "transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:135"
        BranchSideFuncs:
        - "transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:119,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:123,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:127,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:129,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:131,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:133,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:88,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].setEnsureValid(boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].getResultGeometry()"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].<init>(boolean,double)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:121,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].<init>(boolean,double)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$27].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:502,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$27].colorChanged(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:504"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:505,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:505,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:506,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$27:506,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].<init>()"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    - "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ContentFilter:119,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    - Src: "org.jdom2.filter.ContentFilter:120,1"
      Dst: "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].<init>(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    - "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:130"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:134"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.ContentFilter:129,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    - Src: "org.jdom2.filter.ContentFilter:131,1"
      Dst: "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].<init>(int)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    - "[org.jdom2.filter.ContentFilter].setFilterMask(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ContentFilter:143,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    - Src: "org.jdom2.filter.ContentFilter:144,1"
      Dst: "[org.jdom2.filter.ContentFilter].setFilterMask(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].getFilterMask()"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].setFilterMask(int)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ContentFilter:162,1"
      Dst: "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].setDefaultMask()"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].setDocumentContent()"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].setElementContent()"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ContentFilter].setElementVisible(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:198"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:202"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:201"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].setCDATAVisible(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:213"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:217"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:216"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].setTextVisible(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:228"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:232"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:231"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].setCommentVisible(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:243"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:247"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:246"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].setPIVisible(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:258"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:262"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:261"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].setEntityRefVisible(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:273"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:277"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:276"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].setDocTypeVisible(boolean)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:288"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:292"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:291"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ContentFilter].filter(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: 304
    functionDepth: 0
    returnType: "org.jdom2.Content"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInstance(java.lang.Object)"
    functionUses: 9
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:305"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:306"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:305"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:305"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:309"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:308"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:311"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:314"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:313"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:312"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:311"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:314"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:317"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:316"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:315"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:314"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:317"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:320"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:319"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:318"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:317"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:320"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:323"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:322"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:321"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:320"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:323"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:326"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:325"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:324"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:323"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:326"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:332"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:331"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:327"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:326"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:332"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:336"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:335"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:333"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.ContentFilter:305,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 39
  - functionName: "[org.jdom2.filter.ContentFilter].equals(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    linkageType: null
    functionLinenumber: 348
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ContentFilter:349"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:350"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ContentFilter:349"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:350"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:351"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ContentFilter:354"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ContentFilter:355"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.filter.ContentFilter].hashCode()"
    functionSourceFile: "org.jdom2.filter.ContentFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Length].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.Length"
    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: "org.locationtech.jts.algorithm.Length:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Length"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 1
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Length:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Length:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Length:37"
        BranchSideFuncs:
        - "createCoordinate()"
    - Branch String: "org.locationtech.jts.algorithm.Length:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Length:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Length:34,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Length:40,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - Src: "org.locationtech.jts.algorithm.Length:41,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Length:52,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:73,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFloatingPrecisionNoder(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:86"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.noding.Noder)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:78,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:79,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:80,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:80,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:84,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:108,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:90,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].getNoder()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 7
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFloatingPrecisionNoder(boolean)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:126"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:125"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:128"
        BranchSideFuncs:
        - "createFloatingPrecisionNoder(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:127"
        BranchSideFuncs:
        - "createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:126,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFloatingPrecisionNoder(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:128,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createFixedPrecisionNoder(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].setClipEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:133,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:134,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].hasEdgesFor(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].build(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].node(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.EdgeMerger].merge(java.util.List)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:163,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:165,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].node(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeMerger].merge(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].node(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].getNoder()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SimpleNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.IteratedNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ValidatingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ScaledNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SimpleNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ScaledNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.IteratedNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ValidatingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createEdges(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    functionUses: 1
    ICount: 7
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:185,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].getNoder()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:186,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:189,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:190,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createEdges(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].createEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.Edge].isCollapsed(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    - "[org.locationtech.jts.operation.overlayng.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:208"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isCollapsed(org.locationtech.jts.geom.Coordinate[])"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:202"
        BranchSideFuncs:
        - "getData()"
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
        - "getCoordinates()"
        - "getIndex()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:195,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:196,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:197,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:200,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].isCollapsed(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:203,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:205,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:206,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:206,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 212
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygon(org.locationtech.jts.geom.Polygon,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.LineString,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 4
    ICount: 37
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:212"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:214"
        BranchSideFuncs:
        - "isClippedCompletely(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:217"
        BranchSideFuncs:
        - "addPolygon(org.locationtech.jts.geom.Polygon,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:219"
        BranchSideFuncs:
        - "addLine(org.locationtech.jts.geom.LineString,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:222"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223"
        BranchSideFuncs:
        - "addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:222"
        BranchSideFuncs:
        - "addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
        - "getDimension()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:213,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:215,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:215,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:218,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygon(org.locationtech.jts.geom.Polygon,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:220,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.LineString,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:221,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:223,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addCollection(org.locationtech.jts.geom.GeometryCollection,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 228
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:229,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:230,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addGeometryCollection(org.locationtech.jts.geom.GeometryCollection,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:245"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:238,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:240,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:241,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:243,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].add(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygon(org.locationtech.jts.geom.Polygon,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygonRing(org.locationtech.jts.geom.LinearRing,boolean,int)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:249,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygonRing(org.locationtech.jts.geom.LinearRing,boolean,int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:252,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:253,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addPolygonRing(org.locationtech.jts.geom.LinearRing,boolean,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 268
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].clip(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int,int,boolean)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionUses: 2
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:270"
        BranchSideFuncs:
        - "isClippedCompletely(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:273"
        BranchSideFuncs:
        - "clip(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:284"
        BranchSideFuncs:
        - "computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
        - "<init>(int,int,boolean)"
        - "addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:269,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:271,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:271,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:274,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].clip(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:285,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:286,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int,int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:287,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].disjoint(org.locationtech.jts.geom.Envelope)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:299"
        BranchSideFuncs:
        - "disjoint(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:298"
        BranchSideFuncs:
        - "disjoint(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:299,1"
      Dst: "[org.locationtech.jts.geom.Envelope].disjoint(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].clip(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 316
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:325"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:328"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:327"
        BranchSideFuncs:
        - "clip(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:317,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:318,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:324,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:328,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:339,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:340,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].computeDepthDelta(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 351
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:361"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:369"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:368"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:352,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:352,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.LineString,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 382
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isToBeLimited(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].limit(org.locationtech.jts.geom.LineString)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 24
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:384"
        BranchSideFuncs:
        - "isClippedCompletely(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:385"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:387"
        BranchSideFuncs:
        - "isToBeLimited(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:395"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "limit(org.locationtech.jts.geom.LineString)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:394"
        BranchSideFuncs:
        - "addLine(org.locationtech.jts.geom.Coordinate[],int)"
        - "removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:393"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:383,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:385,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:385,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isClippedCompletely(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:388,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isToBeLimited(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:389,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].limit(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:390,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:391,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:395,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].removeRepeatedPoints(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addLine(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:409"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:408"
        BranchSideFuncs:
        - "<init>(int)"
        - "addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:409,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:410,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.EdgeSourceInfo)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 413
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:414,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:415,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].isToBeLimited(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 426
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:430"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:437"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:427,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:431,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:435,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].limit(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder"
    linkageType: null
    functionLinenumber: 448
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:449,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeNodingBuilder:450,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[JtsFuzzer].<init>()"
    functionSourceFile: "JtsFuzzer"
    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: "JtsFuzzer:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[JtsFuzzer].fuzzerTestOneInput(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "JtsFuzzer"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInts(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].pickValue(java.lang.Object[])"
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeString(int)"
    - "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    - "[org.locationtech.jts.geom.Geometry].equalsNorm(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].distance(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].disjoint(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].touches(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].crosses(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].contains(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].overlaps(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].coveredBy(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].symDifference(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 62
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "JtsFuzzer:37"
      Branch Sides:
      - BranchSide: "JtsFuzzer:91"
        BranchSideFuncs: []
      - BranchSide: "JtsFuzzer:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "JtsFuzzer:31,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    - Src: "JtsFuzzer:31,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInts(int)"
    - Src: "JtsFuzzer:32,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].pickValue(java.lang.Object[])"
    - Src: "JtsFuzzer:32,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    - Src: "JtsFuzzer:32,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "JtsFuzzer:33,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "JtsFuzzer:34,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - Src: "JtsFuzzer:34,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeString(int)"
    - Src: "JtsFuzzer:34,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    - Src: "JtsFuzzer:35,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeRemainingAsString()"
    - Src: "JtsFuzzer:37,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "JtsFuzzer:38,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "JtsFuzzer:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].equalsNorm(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].distance(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].disjoint(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].touches(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].crosses(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:61,1"
      Dst: "[org.locationtech.jts.geom.Geometry].contains(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:64,1"
      Dst: "[org.locationtech.jts.geom.Geometry].overlaps(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:67,1"
      Dst: "[org.locationtech.jts.geom.Geometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].coveredBy(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:73,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:76,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    - Src: "JtsFuzzer:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].symDifference(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 18
    BBCount: 23
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(org.locationtech.jts.geom.PrecisionModel$Type)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel$Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:171,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:175,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:77,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:77,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:187,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.WKTReader:190,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[java.io.StringReader].close()"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:237,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTReader:239,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTReader:242,1"
      Dst: "[java.io.StringReader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.noding.SegmentPointComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentPointComparator"
    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: "org.locationtech.jts.noding.SegmentPointComparator:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentPointComparator].compare(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentPointComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentPointComparator].relativeSign(double,double)"
    - "[org.locationtech.jts.noding.SegmentPointComparator].compareValue(int,int)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:42,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:44,1"
      Dst: "[org.locationtech.jts.noding.SegmentPointComparator].relativeSign(double,double)"
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:48,1"
      Dst: "[org.locationtech.jts.noding.SegmentPointComparator].compareValue(int,int)"
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:57,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentPointComparator].relativeSign(double,double)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentPointComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:64"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentPointComparator].compareValue(int,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentPointComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:73"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentPointComparator].relativeSign(double,double)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentPointComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:64"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentPointComparator].compareValue(int,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentPointComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:73"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackAction()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].zzUnpackAction(java.lang.String,int,int[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:57,1"
      Dst: "[org.json.simple.parser.Yylex].zzUnpackAction(java.lang.String,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackAction(java.lang.String,int,int[])"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:65"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:70"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:69"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:68"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:68"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:64,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.parser.Yylex:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackAction(java.lang.String,int,int[])"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:65"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:70"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:69"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:68"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:68"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:64,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.parser.Yylex:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackRowMap()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].zzUnpackRowMap(java.lang.String,int,int[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:90,1"
      Dst: "[org.json.simple.parser.Yylex].zzUnpackRowMap(java.lang.String,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackRowMap(java.lang.String,int,int[])"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:98"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:102"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:97,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.parser.Yylex:99,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackRowMap(java.lang.String,int,int[])"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:98"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:102"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:97,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.parser.Yylex:99,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackAttribute()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].zzUnpackAttribute(java.lang.String,int,int[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:204,1"
      Dst: "[org.json.simple.parser.Yylex].zzUnpackAttribute(java.lang.String,int,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackAttribute(java.lang.String,int,int[])"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:212"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:217"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:216"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:215"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:215"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:211,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.parser.Yylex:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackAttribute(java.lang.String,int,int[])"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:212"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:217"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:216"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:215"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:215"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:211,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.parser.Yylex:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.json.simple.parser.Yylex].getPosition()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuffer].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:281,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.parser.Yylex:267,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].<init>(java.io.InputStream)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:292,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - Src: "org.json.simple.parser.Yylex:292,1"
      Dst: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].zzUnpackCMap(java.lang.String)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:305"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:310"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:309"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:308"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:308"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:-1,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.json.simple.parser.Yylex].zzRefill()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.io.Reader].read(char[],int,int)"
    - "[java.io.Reader].read()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:324"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:337"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:336"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:337"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:344"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:348"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:353"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:352"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:353"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:364"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:363"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:355"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:358"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:325,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.json.simple.parser.Yylex:345,1"
      Dst: "[java.io.Reader].read(char[],int,int)"
    - Src: "org.json.simple.parser.Yylex:354,1"
      Dst: "[java.io.Reader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.json.simple.parser.Yylex].yyclose()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Reader].close()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:375"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:377"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:376"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:376,1"
      Dst: "[java.io.Reader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yystate()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yybegin(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yytext()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:423,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yycharat(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].yylength()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].zzScanError(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Error].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:474,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.parser.Yylex].yypushback(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].yylength()"
    - "[org.json.simple.parser.Yylex].zzScanError(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:487"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:490"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:489"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:487,1"
      Dst: "[org.json.simple.parser.Yylex].yylength()"
    - Src: "org.json.simple.parser.Yylex:488,1"
      Dst: "[org.json.simple.parser.Yylex].zzScanError(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.json.simple.parser.Yylex].yylength()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.Yylex].zzScanError(int)"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Error].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:474,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.parser.Yylex].yylex()"
    functionSourceFile: "org.json.simple.parser.Yylex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.json.simple.parser.Yytoken"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].zzRefill()"
    - "[org.json.simple.parser.Yylex].yytext()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].delete(int,int)"
    - "[org.json.simple.parser.Yylex].yybegin(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Double].valueOf(java.lang.String)"
    - "[org.json.simple.parser.Yylex].yycharat(int)"
    - "[java.lang.Character].<init>(char)"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.Integer].parseInt(java.lang.String,int)"
    - "[java.lang.Long].valueOf(java.lang.String)"
    - "[org.json.simple.parser.Yylex].zzScanError(int)"
    functionUses: 0
    ICount: 189
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.Yylex:531"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:533"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:532"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:533"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:539"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:538"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:547"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:552"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:551"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:556"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:557"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:556"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:560"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:566"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:565"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:563"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:566"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:565"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:572"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:570"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:569"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:676"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:681"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:680"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.Yylex:676"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.Yylex:681"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.Yylex:680"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.Yylex:541,1"
      Dst: "[org.json.simple.parser.Yylex].zzRefill()"
    - Src: "org.json.simple.parser.Yylex:574,1"
      Dst: "[org.json.simple.parser.Yylex].yytext()"
    - Src: "org.json.simple.parser.Yylex:574,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:578,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "org.json.simple.parser.Yylex:578,1"
      Dst: "[java.lang.StringBuffer].delete(int,int)"
    - Src: "org.json.simple.parser.Yylex:578,1"
      Dst: "[org.json.simple.parser.Yylex].yybegin(int)"
    - Src: "org.json.simple.parser.Yylex:582,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.parser.Yylex:586,1"
      Dst: "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    - Src: "org.json.simple.parser.Yylex:590,1"
      Dst: "[java.lang.Boolean].valueOf(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:598,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.json.simple.parser.Yylex:606,1"
      Dst: "[java.lang.Double].valueOf(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:610,1"
      Dst: "[org.json.simple.parser.Yylex].yycharat(int)"
    - Src: "org.json.simple.parser.Yylex:610,1"
      Dst: "[java.lang.Character].<init>(char)"
    - Src: "org.json.simple.parser.Yylex:610,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.Yylex:643,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.json.simple.parser.Yylex:643,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String,int)"
    - Src: "org.json.simple.parser.Yylex:660,1"
      Dst: "[java.lang.Long].valueOf(java.lang.String)"
    - Src: "org.json.simple.parser.Yylex:681,1"
      Dst: "[org.json.simple.parser.Yylex].zzScanError(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 44
    BBCount: 71
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.StAXStreamProcessor)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.output.Format"
    - "org.jdom2.output.support.StAXStreamProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.Format].getRawFormat()"
    - "[org.jdom2.output.Format].clone()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.StAXStreamOutputter:177"
      Branch Sides:
      - BranchSide: "org.jdom2.output.StAXStreamOutputter:176"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.StAXStreamOutputter:175"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.StAXStreamOutputter:178"
      Branch Sides:
      - BranchSide: "org.jdom2.output.StAXStreamOutputter:177"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.StAXStreamOutputter:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:176,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.StAXStreamOutputter:177,1"
      Dst: "[org.jdom2.output.Format].getRawFormat()"
    - Src: "org.jdom2.output.StAXStreamOutputter:177,1"
      Dst: "[org.jdom2.output.Format].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.output.StAXStreamOutputter].<init>()"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.StAXStreamProcessor)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:186,1"
      Dst: "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.StAXStreamProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.StAXStreamProcessor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:203,1"
      Dst: "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.StAXStreamProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.support.StAXStreamProcessor)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.support.StAXStreamProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.StAXStreamProcessor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:215,1"
      Dst: "[org.jdom2.output.StAXStreamOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.StAXStreamProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].setFormat(org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.Format].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:233,1"
      Dst: "[org.jdom2.output.Format].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format].clone()"
    functionSourceFile: "org.jdom2.output.Format"
    linkageType: null
    functionLinenumber: 932
    functionDepth: 0
    returnType: "org.jdom2.output.Format"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format:936,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.StAXStreamOutputter].getFormat()"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.Format"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].getStAXStream()"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.support.StAXStreamProcessor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].setStAXStreamProcessor(org.jdom2.output.support.StAXStreamProcessor)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.support.StAXStreamProcessor"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.Document,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Document"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Document)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:295,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Document)"
    - Src: "org.jdom2.output.StAXStreamOutputter:296,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.DocType,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DocType"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.DocType)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:312,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.DocType)"
    - Src: "org.jdom2.output.StAXStreamOutputter:313,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.Element,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Element)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:332,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Element)"
    - Src: "org.jdom2.output.StAXStreamOutputter:333,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].outputElementContent(org.jdom2.Element,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,java.util.List)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:354,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.output.StAXStreamOutputter:354,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.StAXStreamOutputter:355,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getContent()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 762
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(java.util.List,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,java.util.List)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:374,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,java.util.List)"
    - Src: "org.jdom2.output.StAXStreamOutputter:375,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.CDATA,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.CDATA"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.CDATA)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:391,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.CDATA)"
    - Src: "org.jdom2.output.StAXStreamOutputter:392,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.Text,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Text"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Text)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:409,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Text)"
    - Src: "org.jdom2.output.StAXStreamOutputter:410,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.Comment,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Comment"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Comment)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:426,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.Comment)"
    - Src: "org.jdom2.output.StAXStreamOutputter:427,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.ProcessingInstruction,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:444,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.ProcessingInstruction)"
    - Src: "org.jdom2.output.StAXStreamOutputter:445,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].output(org.jdom2.EntityRef,javax.xml.stream.XMLStreamWriter)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.EntityRef"
    - "javax.xml.stream.XMLStreamWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - "[javax.xml.stream.XMLStreamWriter].flush()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:461,1"
      Dst: "[org.jdom2.output.support.StAXStreamProcessor].process(javax.xml.stream.XMLStreamWriter,org.jdom2.output.Format,org.jdom2.EntityRef)"
    - Src: "org.jdom2.output.StAXStreamOutputter:462,1"
      Dst: "[javax.xml.stream.XMLStreamWriter].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter].clone()"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    linkageType: null
    functionLinenumber: 481
    functionDepth: 0
    returnType: "org.jdom2.output.StAXStreamOutputter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:482,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.jdom2.output.StAXStreamOutputter:488,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.jdom2.output.StAXStreamOutputter:488,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.jdom2.output.StAXStreamOutputter].toString()"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter"
    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(boolean)"
    - "[java.lang.String].toCharArray()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.StAXStreamOutputter:517"
      Branch Sides:
      - BranchSide: "org.jdom2.output.StAXStreamOutputter:533"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.StAXStreamOutputter:532"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter:499,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.output.StAXStreamOutputter:500,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.output.StAXStreamOutputter:501,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "org.jdom2.output.StAXStreamOutputter:517,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "org.jdom2.output.StAXStreamOutputter:529,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.output.StAXStreamOutputter:529,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.output.StAXStreamOutputter:535,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:73,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 9
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:82,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:51,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapRound(java.util.Collection)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:93,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapRound(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapRound(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addIntersectionPixels(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexPixels(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSnaps(java.util.Collection)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:104,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addIntersectionPixels(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:105,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexPixels(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:107,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSnaps(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addIntersectionPixels(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].<init>(double)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].getIntersections()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].addNodes(java.util.List)"
    functionUses: 1
    ICount: 15
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:123,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:126,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].<init>(double)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:127,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:128,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:129,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].getIntersections()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:130,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].addNodes(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:59,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:67,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:68,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:91,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].getIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder"
    linkageType: null
    functionLinenumber: 75
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].addNodes(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:124"
        BranchSideFuncs:
        - "hasNext()"
        - "setToNode()"
        - "iterator()"
        - "next()"
        - "add(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:120,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:120,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:121,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:122,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 7
    returnType: "org.locationtech.jts.noding.snapround.HotPixel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].round(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].find(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:153"
        BranchSideFuncs:
        - "setToNode()"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:152"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
        - "<init>(org.locationtech.jts.geom.Coordinate,double)"
        - "getCoordinate()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:135,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].round(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:137,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].find(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:144,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:153,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:154,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:154,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].round(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:166,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:167,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.snapround.HotPixel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:161"
        BranchSideFuncs:
        - "getData()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:159,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:162,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 410
    functionDepth: 3
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdNode].isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 1
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:427"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:418"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:417"
        BranchSideFuncs:
        - "isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:422"
        BranchSideFuncs:
        - "getLeft()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:421"
        BranchSideFuncs:
        - "getRight()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:424"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:415,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:415,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:418,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:420,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:422,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].scaleRound(double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 27
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixel:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixel:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:81"
        BranchSideFuncs:
        - "scaleRound(double)"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:80"
        BranchSideFuncs:
        - "getX()"
        - "getY()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:70,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:75,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:77,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:77,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].scaleRound(double)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].scaleRound(double)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].round(double)"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:130,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 6
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:171"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:180"
        BranchSideFuncs:
        - "findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:163,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:172,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:175,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:180,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexPixels(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    functionUses: 1
    ICount: 12
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:147"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "add(org.locationtech.jts.geom.Coordinate[])"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:144,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:145,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:107"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:103,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:104,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:105,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:105,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Random].<init>(long)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:60,1"
      Dst: "[java.util.Random].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSnaps(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    functionUses: 1
    ICount: 21
    EdgeCount: 69
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:190"
        BranchSideFuncs:
        - "iterator()"
        - "computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:189"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:193"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:180,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:182,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:184,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:190,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:191,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 211
    functionDepth: 8
    returnType: "org.locationtech.jts.noding.NodedSegmentString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:219"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "getData()"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:244"
        BranchSideFuncs:
        - "round(org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:233"
        BranchSideFuncs:
        - "snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:212,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:213,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:220,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:220,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:224,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:230,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:231,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:241,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].getSplitCoordinates()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:121,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].getSplitCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:167"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:163,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:166,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:166,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:150,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:151,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:69,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 68
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:257,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:257,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$1"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$1:257,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.index.kdtree.KdNodeVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:181,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:184,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:185,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 307
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.kdtree.KdNodeVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree$BestMatchVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdTree$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].push(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    - "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    functionUses: 3
    ICount: 49
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:328"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
        - "isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:325"
        BranchSideFuncs:
        - "getLeft()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:320"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:350"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:339"
        BranchSideFuncs:
        - "visit(org.locationtech.jts.index.kdtree.KdNode)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:338"
        BranchSideFuncs:
        - "isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:347"
        BranchSideFuncs:
        - "getRight()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:308,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:315,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:317,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:319,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:328,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:330,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:331,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:332,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:335,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNodeVisitor].visit(org.locationtech.jts.index.kdtree.KdNode)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:341,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 22
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 295
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapVertexNode(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:296,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:299,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapVertexNode(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapVertexNode(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:304,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:304,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:304,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapRound(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addIntersectionPixels(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexPixels(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSnaps(java.util.Collection)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:104,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addIntersectionPixels(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:105,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexPixels(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:107,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSnaps(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addIntersectionPixels(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].<init>(double)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].getIntersections()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].addNodes(java.util.List)"
    functionUses: 1
    ICount: 15
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:123,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:126,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].<init>(double)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:127,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:128,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:129,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].getIntersections()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:130,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].addNodes(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexPixels(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    functionUses: 1
    ICount: 12
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:147"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "add(org.locationtech.jts.geom.Coordinate[])"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:144,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:145,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:150,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:151,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:167"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:163,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:166,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:166,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSnaps(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    functionUses: 1
    ICount: 21
    EdgeCount: 69
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:190"
        BranchSideFuncs:
        - "iterator()"
        - "computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:189"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:193"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:180,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:181,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:182,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:184,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:190,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:191,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeSegmentSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 211
    functionDepth: 8
    returnType: "org.locationtech.jts.noding.NodedSegmentString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:219"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "getData()"
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:244"
        BranchSideFuncs:
        - "round(org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:233"
        BranchSideFuncs:
        - "snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:212,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:213,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:220,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:220,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:224,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:230,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].round(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:231,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:241,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:257,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$1].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:257,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].addVertexNodeSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 295
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapVertexNode(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:296,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:299,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapVertexNode(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].snapVertexNode(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:304,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:304,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    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: "org.locationtech.jtstest.function.DistanceFunctions:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].distance(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:24,1"
      Dst: "[org.locationtech.jts.geom.Geometry].distance(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].isWithinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:32,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:33,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:33,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:94,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:95,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:129,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:140,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:117,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:178,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:181,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:237"
        BranchSideFuncs:
        - "computeContainmentDistance()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:241"
        BranchSideFuncs:
        - "computeFacetDistance()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:240"
        BranchSideFuncs:
        - "computeFacetDistance()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:239,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:241,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:250"
        BranchSideFuncs:
        - "computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:249"
        BranchSideFuncs:
        - "computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:248,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 254
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].getLocations(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 29
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:258"
        BranchSideFuncs:
        - "getPolygons(org.locationtech.jts.geom.Geometry)"
        - "size()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:271"
        BranchSideFuncs:
        - "getLocations(org.locationtech.jts.geom.Geometry)"
        - "computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:270"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:257,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:260,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:261,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:262,1"
      Dst: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].getLocations(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:263,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].getLocations(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:46,1"
      Dst: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementLocationFilter:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:282"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:275"
        BranchSideFuncs:
        - "get(int)"
        - "computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:275"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:275,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:276,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:278,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 287
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance.GeometryLocation"
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:296"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:295"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:288,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:290,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:293,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 7
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:93"
        BranchSideFuncs:
        - "locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:97"
        BranchSideFuncs:
        - "locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:96"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:91,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:99,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:100,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:67,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 304
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLines(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.operation.distance.DistanceOp].updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 1
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:327"
        BranchSideFuncs:
        - "computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:332"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:333"
        BranchSideFuncs:
        - "updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
        - "computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:311,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:314,1"
      Dst: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:318,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLines(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:319,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:324,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:336,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PointExtracter"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PointExtracter:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:62"
        BranchSideFuncs:
        - "getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PointExtracter:61,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:63,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:63,1"
      Dst: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PointExtracter"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PointExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PointExtracter:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:45"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PointExtracter:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:50"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.GeometryFilter)"
        - "<init>(java.util.List)"
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PointExtracter:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:46,1"
      Dst: "[org.locationtech.jts.geom.util.PointExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.PointExtracter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PointExtracter"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PointExtracter:71,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLines(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 341
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:350"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:349"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:342"
        BranchSideFuncs:
        - "computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:342"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:342,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:343,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:346,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 390
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 87
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:393"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:393"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:411"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:410"
        BranchSideFuncs:
        - "segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:422"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
        - "closestPoints(org.locationtech.jts.geom.LineSegment)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:403"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:391,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:391,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:394,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:400,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:411,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:416,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:418,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:419,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 766
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 4
    ICount: 49
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:767"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:768"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:770"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:772"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:771"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:772"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:775"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:774"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:776"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:778"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:777"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:778"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:780"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:781"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:781"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:782"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:783"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:767,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.geom.Envelope:783,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 2
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.MathUtil].min(double,double,double,double)"
    functionUses: 1
    ICount: 89
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:45"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.algorithm.Distance:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:75"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Distance:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:44,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.Distance:45,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:99,1"
      Dst: "[org.locationtech.jts.math.MathUtil].min(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 552
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 50
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:578"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:587"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:586"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:589"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:594"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:553,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.geom.LineSegment:566,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:567,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:227"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 375
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 29
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:386"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:376"
        BranchSideFuncs:
        - "isEmpty()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:381"
        BranchSideFuncs:
        - "computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:376"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:376,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:377,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:380,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:382,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 429
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 48
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:432"
        BranchSideFuncs:
        - "getCoordinate()"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:449"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:448"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:446"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:432"
        BranchSideFuncs:
        - "getCoordinate()"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:430,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:430,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:433,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:434,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:437,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:441,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:442,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:443,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:371"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:370"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:357"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:354"
        BranchSideFuncs:
        - "isEmpty()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:353"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:361"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:368"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:367"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:357"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:354,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:355,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:356,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:362,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:362,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:365,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].discreteFrechetfDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:38,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:63,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:64,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].createMatrixStorage(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].bresenhamDiagonal(int,int)"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeCoordinateDistances(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeFrechet(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:91,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].createMatrixStorage(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:92,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].bresenhamDiagonal(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:94,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:95,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeCoordinateDistances(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:96,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeFrechet(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:98,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].createMatrixStorage(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].<init>(int,int,double)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:110,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:113,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].<init>(int,int,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:115,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    - "[java.util.Arrays].fill(double[],double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:413,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:415,1"
      Dst: "[java.util.Arrays].fill(double[],double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].expectedValuesHeuristic(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:442,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].expectedValuesHeuristic(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:442,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].expectedValuesHeuristic(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:458,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:445,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].bresenhamDiagonal(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:310"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:292,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeCoordinateDistances(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int[]"
    - "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage"
    - "java.util.HashMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].set(int,int,double)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.util.HashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].isValueSet(int,int)"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:228"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:248"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:265"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:265"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:227,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:229,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].set(int,int,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:230,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:230,1"
      Dst: "[java.util.HashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:246,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].isValueSet(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 21
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeFrechet(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int[]"
    - "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage"
    - "java.util.HashMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].isValueSet(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].getMinDistanceAtCorner(org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].get(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].set(int,int,double)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    - "[java.lang.Double].valueOf(double)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:147,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].isValueSet(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:148,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].getMinDistanceAtCorner(org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:149,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].get(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:150,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].set(int,int,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:168,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:170,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:170,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:172,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:174,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].getMinDistanceAtCorner(org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].get(int,int)"
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:188,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].get(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:191,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:25,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].discreteFrechetfDistanceLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:43,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:44,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:125,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:127,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].createMatrixStorage(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].bresenhamDiagonal(int,int)"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeCoordinateDistances(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeFrechet(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:91,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].createMatrixStorage(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:92,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].bresenhamDiagonal(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:94,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:95,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeCoordinateDistances(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:96,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].computeFrechet(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],int[],org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage,java.util.HashMap)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:98,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].discreteHausdorffDistanceLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:49,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:50,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:51,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:25,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:106,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:107,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:120,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:126,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:128,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:128,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:131,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:133,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter:141,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:85,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.PointPairDistance:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:94"
        BranchSideFuncs:
        - "initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:93"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.distance.PointPairDistance:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:97"
        BranchSideFuncs:
        - "initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:91,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:94,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:96,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:47,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:47,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    - "[java.lang.Math].rint(double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:168,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:163,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:170,1"
      Dst: "[java.lang.Math].rint(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:116,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].densifiedDiscreteHausdorffDistanceLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:56,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:57,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:58,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:59,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:59,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:106,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:107,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:116,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].discreteOrientedHausdorffDistanceLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].orientedDistance()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:64,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:65,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].orientedDistance()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:66,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].orientedDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:112,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:113,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:126,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:128,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:128,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:131,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:133,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:116,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].discreteHausdorffDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:71,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:72,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:106,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:107,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].discreteOrientedHausdorffDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].orientedDistance()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:77,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:78,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].orientedDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].orientedDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:112,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:113,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].distanceIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:82,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:68,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:69,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:115,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:128,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:129,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:133,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].isWithinDistanceIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:86,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:81,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:82,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:115,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.IndexedFacetDistance:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.IndexedFacetDistance:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.IndexedFacetDistance:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:185,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:185,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:189,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:190,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 766
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 4
    ICount: 49
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:767"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:768"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:770"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:772"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:771"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:772"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:775"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:774"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:776"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:778"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:777"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:778"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:780"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:781"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:781"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:782"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:783"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:767,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.geom.Envelope:783,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:35,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:36,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:38,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.STRtree"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.BoundablePair,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:421,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:421,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:422,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.BoundablePair,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:48,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.BoundablePair,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].maximumDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:497"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:471"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:470"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:494"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:486"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:496"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:442,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:443,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:445,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:447,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:448,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:471,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].maximumDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:478,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:495,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].maximumDistance()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.index.strtree.EnvelopeDistance].maximumDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:73,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:72,1"
      Dst: "[org.locationtech.jts.index.strtree.EnvelopeDistance].maximumDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].maximumDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.Math].min(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:37,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:37,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:38,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:39,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:40,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:41,1"
      Dst: "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:47,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:128,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.PriorityQueue"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].area(org.locationtech.jts.index.strtree.Boundable)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expand(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,boolean,java.util.PriorityQueue,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:161,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:170,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].area(org.locationtech.jts.index.strtree.Boundable)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:171,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expand(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,boolean,java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:188,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].nearestPointsIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:90,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:93,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:94,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:115,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestLocations(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].toPoints(org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:161,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestLocations(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:162,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].toPoints(org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DistanceFunctions].nearestPointsIndexedEachB(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DistanceFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DistanceFunctions:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DistanceFunctions:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:95,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:100,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:100,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:101,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:101,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.DistanceFunctions:104,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:115,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestLocations(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].toPoints(org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:161,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestLocations(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:162,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].toPoints(org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlay.OverlayOp"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.algorithm.PointLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:32,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].build(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 17
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.PointBuilder].extractNonCoveredResultNodes(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:48,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].extractNonCoveredResultNodes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].extractNonCoveredResultNodes(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - "[org.locationtech.jts.geomgraph.Node].isIncidentEdgeInResult()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getDegree()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - "[org.locationtech.jts.operation.overlay.PointBuilder].filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 26
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:92"
        BranchSideFuncs:
        - "isInResult()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:76"
        BranchSideFuncs:
        - "isIncidentEdgeInResult()"
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:78"
        BranchSideFuncs:
        - "getEdges()"
        - "getDegree()"
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:84"
        BranchSideFuncs:
        - "isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
        - "getLabel()"
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:90"
        BranchSideFuncs:
        - "filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:71,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:74,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isInResult()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:77,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].isIncidentEdgeInResult()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:79,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:79,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getDegree()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:85,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:86,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:87,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.overlay.PointBuilder].filterCoveredNodeToPoint(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.PointBuilder"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByLA(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.PointBuilder:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:110"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.Coordinate)"
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.overlay.PointBuilder:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:105,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:106,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByLA(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.PointBuilder:108,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$11].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$11"
    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: "org.locationtech.jtstest.function.SelectionFunctions$11:148,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$11].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions$11:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions$11:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$11:150,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].<init>()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    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: "org.locationtech.jts.io.ByteOrderValues:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].getInt(byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:27"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:33"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].putInt(int,byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:49"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 97
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].putLong(long,byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:94"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].getDouble(byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderValues:108,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    - Src: "org.locationtech.jts.io.ByteOrderValues:109,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].putDouble(double,byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    - "[org.locationtech.jts.io.ByteOrderValues].putLong(long,byte[],int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderValues:114,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    - Src: "org.locationtech.jts.io.ByteOrderValues:115,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].putLong(long,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:59,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:61,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:62,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:63,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 9
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:68,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:51,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getIndex()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].snapRound(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    functionUses: 4
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:74,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:75,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].getIndex()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:75,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:76,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].snapRound(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].getIndex()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "org.locationtech.jts.index.SpatialIndex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].<init>(org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].snapRound(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].findInteriorIntersections(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeIntersectionSnaps(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(java.util.Collection)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:97,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].findInteriorIntersections(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:98,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeIntersectionSnaps(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:99,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].findInteriorIntersections(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].getInteriorIntersections()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:112,1"
      Dst: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:113,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:114,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:115,1"
      Dst: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].getInteriorIntersections()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].getInteriorIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeIntersectionSnaps(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:128"
        BranchSideFuncs:
        - "next()"
        - "<init>(org.locationtech.jts.geom.Coordinate,double)"
        - "snap(org.locationtech.jts.noding.snapround.HotPixel)"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:123,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:123,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:124,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:125,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:126,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].scaleRound(double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 27
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixel:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixel:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:81"
        BranchSideFuncs:
        - "scaleRound(double)"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixel:80"
        BranchSideFuncs:
        - "getX()"
        - "getY()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:70,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:75,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:77,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:77,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].scaleRound(double)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixel:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.snapround.HotPixel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:68,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.snapround.HotPixel"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].getSafeEnvelope(org.locationtech.jts.noding.snapround.HotPixel)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].<init>(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1].<init>(org.locationtech.jts.noding.snapround.MCIndexPointSnapper,org.locationtech.jts.geom.Envelope,org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].isNodeAdded()"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:53,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].getSafeEnvelope(org.locationtech.jts.noding.snapround.HotPixel)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:54,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].<init>(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:56,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1].<init>(org.locationtech.jts.noding.snapround.MCIndexPointSnapper,org.locationtech.jts.geom.Envelope,org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:56,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:63,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].isNodeAdded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].getSafeEnvelope(org.locationtech.jts.noding.snapround.HotPixel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.snapround.HotPixel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixel].getScaleFactor()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:82,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].getScaleFactor()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:83,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper:84,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].getScaleFactor()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:155,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].<init>(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.snapround.HotPixel"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:98,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    linkageType: null
    functionLinenumber: 20
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:21,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:26,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1].<init>(org.locationtech.jts.noding.snapround.MCIndexPointSnapper,org.locationtech.jts.geom.Envelope,org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.snapround.MCIndexPointSnapper"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1:56,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].isNodeAdded()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction"
    linkageType: null
    functionLinenumber: 109
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:141"
        BranchSideFuncs:
        - "computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:137,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:137,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:138,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:139,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:157"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,double)"
        - "snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:148"
        BranchSideFuncs:
        - "addIntersection(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:147"
        BranchSideFuncs:
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:148,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:150,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:151,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:154,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:186,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].snapRound(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].findInteriorIntersections(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeIntersectionSnaps(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(java.util.Collection)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:97,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].findInteriorIntersections(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:98,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeIntersectionSnaps(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:99,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].findInteriorIntersections(java.util.Collection,org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].getInteriorIntersections()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:112,1"
      Dst: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:113,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:114,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:115,1"
      Dst: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].getInteriorIntersections()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeIntersectionSnaps(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:128"
        BranchSideFuncs:
        - "next()"
        - "<init>(org.locationtech.jts.geom.Coordinate,double)"
        - "snap(org.locationtech.jts.noding.snapround.HotPixel)"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:123,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:123,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:124,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:125,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:126,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:141"
        BranchSideFuncs:
        - "computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:137,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:137,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:138,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:139,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeVertexSnaps(org.locationtech.jts.noding.NodedSegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:157"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,double)"
        - "snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:148"
        BranchSideFuncs:
        - "addIntersection(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:147"
        BranchSideFuncs:
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:148,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:150,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:151,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper].snap(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexSnapRounder:154,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:98,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFiltered()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter].isFiltered(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter].isFiltered(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFullyEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFiltered()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFiltered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.Style"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].<init>(double,boolean)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:153,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.densify.Densifier].access$000(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:166"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:166"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:160,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:162,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:162,1"
      Dst: "[org.locationtech.jts.densify.Densifier].access$000(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:167,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:167,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.densify.Densifier].access$000(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.densify.Densifier].densifyPoints(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:44,1"
      Dst: "[org.locationtech.jts.densify.Densifier].densifyPoints(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].densifyPoints(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setZ(double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setZ(double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 66
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:94"
        BranchSideFuncs:
        - "getLength()"
      - BranchSide: "org.locationtech.jts.densify.Densifier:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.densify.Densifier:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.densify.Densifier:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.densify.Densifier:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:68"
        BranchSideFuncs:
        - "pointAlong(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier:67"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.densify.Densifier:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:null"
        BranchSideFuncs:
        - "setZ(double)"
    - Branch String: "org.locationtech.jts.densify.Densifier:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:null"
        BranchSideFuncs:
        - "setZ(double)"
    - Branch String: "org.locationtech.jts.densify.Densifier:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:96"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.densify.Densifier:95"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:68,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.densify.Densifier:69,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.densify.Densifier:73,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.densify.Densifier:74,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.densify.Densifier:81,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.densify.Densifier:85,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    - Src: "org.locationtech.jts.densify.Densifier:86,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.densify.Densifier:87,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jts.densify.Densifier:89,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.densify.Densifier:96,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 309
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].create()"
    - "[org.locationtech.jts.geom.Coordinate].create()"
    - "[org.locationtech.jts.geom.CoordinateXYM].create()"
    - "[org.locationtech.jts.geom.CoordinateXY].create()"
    functionUses: 1
    ICount: 25
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:310,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].createValidArea(org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:175"
        BranchSideFuncs:
        - "createValidArea(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:171,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:176,1"
      Dst: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].createValidArea(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 247
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 5
    ICount: 58
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:257"
        BranchSideFuncs:
        - "createPolygon()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:257"
        BranchSideFuncs:
        - "createPolygon()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:259"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:272"
        BranchSideFuncs:
        - "isEmpty()"
        - "getInteriorRingN(int)"
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:259"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:278"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:277"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:249,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:249,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:252,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:253,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:254,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:260,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:261,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:262,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:269,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:274,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:273,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:277,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:278,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:279,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 24
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].createValidArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
        BranchSideFuncs:
        - "buffer(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:197"
        BranchSideFuncs:
        - "isValid()"
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:199"
        BranchSideFuncs:
        - "buffer(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
        BranchSideFuncs:
        - "buffer(double)"
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:199,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].createValidArea(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:180,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:181,1"
      Dst: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].createValidArea(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 283
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    functionUses: 4
    ICount: 27
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:291"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:288"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:287"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:294"
        BranchSideFuncs:
        - "createMultiPolygon()"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:293"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:284,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:285,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:286,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:286,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:288,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:289,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:291,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:292,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:294,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].createValidArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
        BranchSideFuncs:
        - "buffer(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:197"
        BranchSideFuncs:
        - "isValid()"
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:199"
        BranchSideFuncs:
        - "buffer(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
        BranchSideFuncs:
        - "buffer(double)"
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:199,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].createValidArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier$DensifyTransformer"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
        BranchSideFuncs:
        - "buffer(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:197"
        BranchSideFuncs:
        - "isValid()"
    - Branch String: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:199"
        BranchSideFuncs:
        - "buffer(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198"
        BranchSideFuncs:
        - "buffer(double)"
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:198,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    - Src: "org.locationtech.jts.densify.Densifier$DensifyTransformer:199,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.EntityRef].<init>()"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:86,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:97,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:112,1"
      Dst: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.EntityRef].setName(java.lang.String)"
    - "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:129,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.EntityRef:130,1"
      Dst: "[org.jdom2.EntityRef].setName(java.lang.String)"
    - Src: "org.jdom2.EntityRef:131,1"
      Dst: "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    - Src: "org.jdom2.EntityRef:132,1"
      Dst: "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].getName()"
    functionSourceFile: "org.jdom2.EntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].getValue()"
    functionSourceFile: "org.jdom2.EntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].getPublicID()"
    functionSourceFile: "org.jdom2.EntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].getSystemID()"
    functionSourceFile: "org.jdom2.EntityRef"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].setName(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.EntityRef"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.EntityRef:186"
      Branch Sides:
      - BranchSide: "org.jdom2.EntityRef:189"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.EntityRef:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.EntityRef:185,1"
      Dst: "[org.jdom2.Verifier].checkXMLName(java.lang.String)"
    - Src: "org.jdom2.EntityRef:187,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.EntityRef].setPublicID(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.EntityRef"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.EntityRef:203"
      Branch Sides:
      - BranchSide: "org.jdom2.EntityRef:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.EntityRef:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.EntityRef:202,1"
      Dst: "[org.jdom2.Verifier].checkPublicID(java.lang.String)"
    - Src: "org.jdom2.EntityRef:204,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.EntityRef].setSystemID(java.lang.String)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.EntityRef"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.EntityRef:220"
      Branch Sides:
      - BranchSide: "org.jdom2.EntityRef:223"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.EntityRef:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.EntityRef:219,1"
      Dst: "[org.jdom2.Verifier].checkSystemLiteral(java.lang.String)"
    - Src: "org.jdom2.EntityRef:221,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.EntityRef].toString()"
    functionSourceFile: "org.jdom2.EntityRef"
    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].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:236,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.EntityRef:236,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.EntityRef:236,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].detach()"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.EntityRef"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].detach()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:247,1"
      Dst: "[org.jdom2.Content].detach()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: 251
    functionDepth: 0
    returnType: "org.jdom2.EntityRef"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:252,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].getParent()"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: 257
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:258,1"
      Dst: "[org.jdom2.Content].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].clone()"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 0
    returnType: "org.jdom2.EntityRef"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].clone()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:263,1"
      Dst: "[org.jdom2.Content].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.CommandOptions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOptions"
    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: "org.locationtech.jtstest.cmd.CommandOptions:14,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:135,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:137,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].sequence(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].<init>()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].getSequencedLineStrings()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:83,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:84,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:85,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].getSequencedLineStrings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:135,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:137,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:30,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:167,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineSequencer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer$1:167,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].getSequencedLineStrings()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:203,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:211,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:215,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:218,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:219,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    - "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].getConnectedSubgraphs()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].hasSequence(org.locationtech.jts.planargraph.Subgraph)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequence(org.locationtech.jts.planargraph.Subgraph)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:227,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:228,1"
      Dst: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:229,1"
      Dst: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].getConnectedSubgraphs()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:230,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:230,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:231,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:232,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].hasSequence(org.locationtech.jts.planargraph.Subgraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:233,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequence(org.locationtech.jts.planargraph.Subgraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:234,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    functionSourceFile: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.PlanarGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].getConnectedSubgraphs()"
    functionSourceFile: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setVisited(java.util.Iterator,boolean)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].edgeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.Edge].getDirEdge(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].findSubgraph(org.locationtech.jts.planargraph.Node)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:44,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:46,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:46,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setVisited(java.util.Iterator,boolean)"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:47,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].edgeIterator()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:47,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:48,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:49,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].getDirEdge(int)"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:49,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:50,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:51,1"
      Dst: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].findSubgraph(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:51,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.planargraph.Edge].getDirEdge(int)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].findSubgraph(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.planargraph.Subgraph"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Subgraph].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    - "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].addReachable(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Subgraph)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:59,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:60,1"
      Dst: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].addReachable(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Subgraph)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Subgraph].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    functionSourceFile: "org.locationtech.jts.planargraph.Subgraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.PlanarGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.planargraph.NodeMap].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Subgraph:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.planargraph.Subgraph:33,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.planargraph.Subgraph:34,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.planargraph.Subgraph:35,1"
      Dst: "[org.locationtech.jts.planargraph.NodeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].<init>()"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.planargraph.NodeMap:33,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].addReachable(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].addEdges(org.locationtech.jts.planargraph.Node,java.util.Stack,org.locationtech.jts.planargraph.Subgraph)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:72,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:73,1"
      Dst: "[java.util.Vector].add(java.lang.Object)"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:74,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:75,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:76,1"
      Dst: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].addEdges(org.locationtech.jts.planargraph.Node,java.util.Stack,org.locationtech.jts.planargraph.Subgraph)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].addEdges(org.locationtech.jts.planargraph.Node,java.util.Stack,org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "java.util.Stack"
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].setVisited(boolean)"
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.planargraph.Subgraph].add(org.locationtech.jts.planargraph.Edge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - "[java.util.Stack].push(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:87,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setVisited(boolean)"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:88,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:88,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:88,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:89,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:90,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:90,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].add(org.locationtech.jts.planargraph.Edge)"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:91,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:92,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - Src: "org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder:92,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:61,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:62,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].sort(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.DirectedEdgeStar:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:93,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Subgraph].add(org.locationtech.jts.planargraph.Edge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Subgraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jts.planargraph.Edge].getDirEdge(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.planargraph.NodeMap].add(org.locationtech.jts.planargraph.Node)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.Subgraph:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.Subgraph:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Subgraph:65,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.planargraph.Subgraph:67,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.planargraph.Subgraph:68,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].getDirEdge(int)"
    - Src: "org.locationtech.jts.planargraph.Subgraph:68,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.planargraph.Subgraph:70,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.planargraph.Subgraph:70,1"
      Dst: "[org.locationtech.jts.planargraph.NodeMap].add(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].add(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 1
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:47,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.planargraph.NodeMap:47,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].hasSequence(org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:254,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:254,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:255,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:256,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    functionSourceFile: "org.locationtech.jts.planargraph.Subgraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.NodeMap].iterator()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Subgraph:98,1"
      Dst: "[org.locationtech.jts.planargraph.NodeMap].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:70,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.planargraph.NodeMap:70,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getDegree()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getDegree()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:88,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getDegree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getDegree()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    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: "org.locationtech.jts.planargraph.DirectedEdgeStar:68,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequence(org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Subgraph].edgeIterator()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setVisited(java.util.Iterator,boolean)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findLowestDegreeNode(org.locationtech.jts.planargraph.Subgraph)"
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[java.util.LinkedList].<init>()"
    - "[java.util.List].listIterator()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].addReverseSubpath(org.locationtech.jts.planargraph.DirectedEdge,java.util.ListIterator,boolean)"
    - "[java.util.ListIterator].hasPrevious()"
    - "[java.util.ListIterator].previous()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].orient(java.util.List)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:264,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].edgeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:264,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setVisited(java.util.Iterator,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:266,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findLowestDegreeNode(org.locationtech.jts.planargraph.Subgraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:267,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:267,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:267,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:268,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:270,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:271,1"
      Dst: "[java.util.List].listIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:272,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].addReverseSubpath(org.locationtech.jts.planargraph.DirectedEdge,java.util.ListIterator,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:273,1"
      Dst: "[java.util.ListIterator].hasPrevious()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:274,1"
      Dst: "[java.util.ListIterator].previous()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:275,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:275,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:285,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].orient(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.planargraph.Subgraph].edgeIterator()"
    functionSourceFile: "org.locationtech.jts.planargraph.Subgraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].iterator()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Subgraph:92,1"
      Dst: "[java.util.Set].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findLowestDegreeNode(org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:345"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:344"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:339,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:339,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:340,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:341,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].addReverseSubpath(org.locationtech.jts.planargraph.DirectedEdge,java.util.ListIterator,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    - "java.util.ListIterator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[java.util.ListIterator].add(java.lang.Object)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setVisited(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:316,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:320,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:320,1"
      Dst: "[java.util.ListIterator].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:321,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:321,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setVisited(boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:322,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:323,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:331,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:308"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:300,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:300,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:300,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:301,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:302,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:302,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:304,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].orient(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(java.util.List)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:393"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:406"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:369,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:370,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:371,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:372,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:375,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:383,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:407,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:425"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:421,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:422,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:422,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:423,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:424,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:424,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:457"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:439,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:441,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:441,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:442,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:445,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:446,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:449,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:449,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:450,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:452,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:455,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:456,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:457,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:467"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:462,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:466,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:468,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:468,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].isSequenced(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.List].clear()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:122"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:106,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:109,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:110,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:111,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:112,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:113,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:118,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:124,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:125,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:128,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:153,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:153,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:154,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:155,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:167,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:167,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer$1].<init>(org.locationtech.jts.operation.linemerge.LineSequencer)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].addLine(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:180"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:179"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geom.LineString)"
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:178,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:180,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].isSequenceable()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:192,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:211,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:215,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:218,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:219,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].getSequencedLineStrings()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:203,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].computeSequence()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:211,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:215,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:218,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:219,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequences()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    - "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].getConnectedSubgraphs()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].hasSequence(org.locationtech.jts.planargraph.Subgraph)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequence(org.locationtech.jts.planargraph.Subgraph)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:227,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:228,1"
      Dst: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].<init>(org.locationtech.jts.planargraph.PlanarGraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:229,1"
      Dst: "[org.locationtech.jts.planargraph.algorithm.ConnectedSubgraphFinder].getConnectedSubgraphs()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:230,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:230,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:231,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:232,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].hasSequence(org.locationtech.jts.planargraph.Subgraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:233,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequence(org.locationtech.jts.planargraph.Subgraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:234,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].hasSequence(org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:254,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:254,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:255,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:256,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findSequence(org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Subgraph].edgeIterator()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setVisited(java.util.Iterator,boolean)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findLowestDegreeNode(org.locationtech.jts.planargraph.Subgraph)"
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[java.util.LinkedList].<init>()"
    - "[java.util.List].listIterator()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].addReverseSubpath(org.locationtech.jts.planargraph.DirectedEdge,java.util.ListIterator,boolean)"
    - "[java.util.ListIterator].hasPrevious()"
    - "[java.util.ListIterator].previous()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].orient(java.util.List)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:264,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].edgeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:264,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setVisited(java.util.Iterator,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:266,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findLowestDegreeNode(org.locationtech.jts.planargraph.Subgraph)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:267,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:267,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:267,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:268,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:270,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:271,1"
      Dst: "[java.util.List].listIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:272,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].addReverseSubpath(org.locationtech.jts.planargraph.DirectedEdge,java.util.ListIterator,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:273,1"
      Dst: "[java.util.ListIterator].hasPrevious()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:274,1"
      Dst: "[java.util.ListIterator].previous()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:275,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:275,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:285,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].orient(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:308"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:300,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:300,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:300,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:301,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:302,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:302,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isVisited()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:304,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].addReverseSubpath(org.locationtech.jts.planargraph.DirectedEdge,java.util.ListIterator,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    - "java.util.ListIterator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[java.util.ListIterator].add(java.lang.Object)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setVisited(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:316,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:320,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:320,1"
      Dst: "[java.util.ListIterator].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:321,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:321,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setVisited(boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:322,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:323,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].findUnvisitedBestOrientedDE(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:331,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].findLowestDegreeNode(org.locationtech.jts.planargraph.Subgraph)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Subgraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:345"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:344"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:339,1"
      Dst: "[org.locationtech.jts.planargraph.Subgraph].nodeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:339,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:340,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:341,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].orient(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(java.util.List)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:393"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:406"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:369,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:370,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:371,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:372,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:375,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:383,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:407,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:425"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:421,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:422,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:422,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:423,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:424,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:424,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].buildSequencedGeometry(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:457"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:439,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:441,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:441,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:442,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:445,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:446,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:449,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:449,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:450,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:452,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:455,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:456,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:457,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].reverse(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineSequencer:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineSequencer:467"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:462,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:466,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:468,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:468,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].access$000(org.locationtech.jts.operation.linemerge.LineSequencer,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineSequencer"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].addLine(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:79,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].addLine(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryContext:210,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].<init>(int,java.util.Comparator)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryContext:214,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].getComparator()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].isSorted()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryContext:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryContext:223"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Content$CType].values()"
    functionSourceFile: "org.jdom2.Content$CType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Content$CType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Content$CType:114,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Content$CType].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.Content$CType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Content$CType"
    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: "org.jdom2.Content$CType:114,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Content$CType].<init>(java.lang.String,int)"
    functionSourceFile: "org.jdom2.Content$CType"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Content$CType:114,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$4:211,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$4].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$4:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setFocusGeometry(int)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.WKTPanel:510"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.WKTPanel:511"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:509"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setFocusGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:515,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:517,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setFocusGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setEditGeomIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].setFocusGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setEditGeomIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].setFocusGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setEditGeomIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].setFocusGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:325"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].insert(double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].<init>(double,double,java.lang.Object)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:65"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(double,double,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:65,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:66,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].<init>(double,double,java.lang.Object)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:66,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildRoot()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:77"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:79"
        BranchSideFuncs:
        - "buildRoot()"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:78,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:80,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildRoot()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildRoot()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildTree()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:86"
        BranchSideFuncs:
        - "buildTree()"
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:85"
        BranchSideFuncs:
        - "buildTree()"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:86,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildTree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildTree()"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "org.locationtech.jts.index.intervalrtree.IntervalRTreeNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode$NodeComparator].<init>()"
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildLevel(java.util.List,java.util.List)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:105"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:93,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode$NodeComparator].<init>()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:93,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:98,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:101,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildLevel(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:102,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:103,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].buildLevel(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].clear()"
    - "[org.jdom2.ContentList].clear()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].<init>(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    - "[java.util.List].clear()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:132"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:123"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "get(int)"
        - "<init>(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:116,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:117,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:118,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:122,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:126,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].<init>(org.locationtech.jts.index.intervalrtree.IntervalRTreeNode,org.locationtech.jts.index.intervalrtree.IntervalRTreeNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:154"
        BranchSideFuncs:
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:149,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:155,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:54,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:60,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:61,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:341,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateList:62,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:63,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:60,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:61,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:72,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:75,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:75,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:88,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:90,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:91,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    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: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:105,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setSites(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:117,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:54,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:129,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:60,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:61,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setTolerance(double)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:148,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:149,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:150,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:151,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:152,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:88,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:90,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:91,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:72,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:75,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:75,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].createFrame(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].initSubdiv()"
    - "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:109,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:91,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:467,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:114,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].createFrame(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:116,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].initSubdiv()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:117,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].createFrame(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:136,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:137,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:139,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:139,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:140,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:140,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:141,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:144,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:145,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:51,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].initSubdiv()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:152,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:209,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:210,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setNext(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setDest(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:50,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:60,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setNext(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:66,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:67,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setDest(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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: "org.locationtech.jts.triangulate.quadedge.QuadEdge:142,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setNext(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setDest(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:333,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:333,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setNext(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:100,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:100,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:108,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setNext(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].init()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:30,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].init()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].findEdge()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:34,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].findEdge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].findEdge()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:38,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getEdges()"
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:40,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:40,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getEdges()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:80,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:81,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isVertexOfEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isOnEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].delete(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].swap(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lPrev()"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:102,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:104,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isVertexOfEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isOnEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:111,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:112,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:112,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].delete(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:119,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:119,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:120,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:123,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:123,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:125,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:142,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:146,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].swap(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:163,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lPrev()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeLocator].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:326,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeLocator].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isVertexOfEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex,double)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:495"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:498"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:497"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:495,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:495,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:495,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:95,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:95,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:351,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:351,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isOnEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:483"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:480,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:480,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:480,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:480,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:481,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].delete(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - "[java.util.List].remove(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].delete()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:237,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:237,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:238,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:241,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:245,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:250,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].delete()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:224,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:225,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:80,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:80,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:80,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:81,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:81,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:82,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].invRot()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:285,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].invRot()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:285,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:285,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].invRot()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:231,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:225,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:225,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:225,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:214"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:188,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.TrianglePredicate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleNormalized(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.TrianglePredicate:128,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleNormalized(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveAtOrigin(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:175,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:175,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:176,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveAtOrigin(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:178,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:179,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:459"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:462"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:461"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:462"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:458,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:87,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:87,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveAtOrigin(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:191,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:191,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:192,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:192,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:193,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:194,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:208,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].swap(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setDest(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:120,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:121,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:122,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:124,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:126,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:126,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:127,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setDest(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lPrev()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:294,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getSubdivision()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:162,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:148,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:149,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:150,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:151,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:152,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getEdges(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getEdges(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:174,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:175,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getEdges(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:148,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:149,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:150,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:151,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:152,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getEdges(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getPrimaryEdges(boolean)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:861"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:866"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:865"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:858,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getPrimaryEdges(boolean)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:859,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:861,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:861,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:862,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:864,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:864,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:864,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:863,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:866,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getPrimaryEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Stack].<init>()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getPrimary()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:602"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:617"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:616"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:604"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:616"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:615"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:607"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:608"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:607"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:607"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:610"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:609"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:596,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:597,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:598,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:600,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:602,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:603,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:604,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:605,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getPrimary()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:607,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:608,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:610,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:611,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:613,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getPrimary()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdge:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdge:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdge:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:156,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:156,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:156,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:156,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:159,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:351,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:351,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:416"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:459"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:462"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:461"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:462"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:458,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getTriangles(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTriangles(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:187,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:188,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTriangles(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:148,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:149,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:150,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:151,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:152,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTriangles(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTriangleCoordinates(boolean)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:880"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:885"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:884"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:877,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTriangleCoordinates(boolean)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:878,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:880,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:880,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:881,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:883,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:883,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:885,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTriangleCoordinates(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor].getTriangles()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:801,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:802,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:803,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor].getTriangles()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor:811,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor:807,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor:809,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.TriangleVisitor"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].fetchTriangleToVisit(org.locationtech.jts.triangulate.quadedge.QuadEdge,java.util.Stack,boolean,java.util.Set)"
    - "[org.locationtech.jts.triangulate.quadedge.TriangleVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:682"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:691"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:684"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:689"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:687"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:689"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:677,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:678,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:680,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:682,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:683,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:684,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:685,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].fetchTriangleToVisit(org.locationtech.jts.triangulate.quadedge.QuadEdge,java.util.Stack,boolean,java.util.Set)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:688,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TriangleVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].fetchTriangleToVisit(org.locationtech.jts.triangulate.quadedge.QuadEdge,java.util.Stack,boolean,java.util.Set)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "java.util.Stack"
    - "boolean"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:719"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:723"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:722"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:724"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:728"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:727"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:732"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:716"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:734"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:736"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:735"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:734"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:736"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:735"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:719,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:723,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:724,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:725,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:728,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:731,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:416"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:415,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].invRot()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:285,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].invRot()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:285,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:285,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor].getTriangles()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCoordinatesVisitor"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:201,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets,java.lang.Integer[],int[],int[])"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    - "java.lang.Integer[]"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:207,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getCount()"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getSize(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    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: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$Subsets:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getItem(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "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].intValue()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$Subsets:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:246"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:245"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$Subsets:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:250,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractStreamDrawTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractStreamDrawTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractStreamDrawTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractStreamDrawTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].getGeometryType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier].simplify()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:31,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:32,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier].simplify()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier].simplify()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].buildLine(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.VWLineSimplifier].simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:49"
        BranchSideFuncs:
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:48"
        BranchSideFuncs:
        - "simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:56"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:46,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].buildLine(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:49,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier].simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:51,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:54,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].buildLine(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 2
    returnType: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:101"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:93"
        BranchSideFuncs:
        - "setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:null"
        BranchSideFuncs:
        - "setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
        - "updateArea()"
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:91,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:94,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:96,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:97,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier].simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getArea()"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].remove()"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].isLive()"
    functionUses: 1
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:76"
        BranchSideFuncs:
        - "getArea()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:73"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:79"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:78"
        BranchSideFuncs:
        - "isLive()"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:79"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:78"
        BranchSideFuncs:
        - "isLive()"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:66,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getArea()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:74,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:77,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].remove()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:79,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].isLive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getArea()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 0
    returnType: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].remove()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 2
    returnType: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionUses: 1
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:154"
        BranchSideFuncs:
        - "setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:160"
        BranchSideFuncs:
        - "setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
        - "updateArea()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:150,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setNext(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:151,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].updateArea()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:155,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].setPrev(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].isLive()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 141
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:168"
        BranchSideFuncs:
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:167"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:168,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex:171,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier].simplify()"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].buildLine(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.VWLineSimplifier].simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:49"
        BranchSideFuncs:
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:48"
        BranchSideFuncs:
        - "simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:56"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:46,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].buildLine(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:49,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier].simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:51,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:54,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.VWLineSimplifier].simplifyVertex(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    functionSourceFile: "org.locationtech.jts.simplify.VWLineSimplifier"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.VWLineSimplifier$VWVertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getArea()"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].remove()"
    - "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].isLive()"
    functionUses: 1
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:76"
        BranchSideFuncs:
        - "getArea()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:73"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:79"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:78"
        BranchSideFuncs:
        - "isLive()"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:79"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:78"
        BranchSideFuncs:
        - "isLive()"
    - Branch String: "org.locationtech.jts.simplify.VWLineSimplifier:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWLineSimplifier:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:66,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].getArea()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:74,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].access$000(org.locationtech.jts.simplify.VWLineSimplifier$VWVertex)"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:77,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].remove()"
    - Src: "org.locationtech.jts.simplify.VWLineSimplifier:79,1"
      Dst: "[org.locationtech.jts.simplify.VWLineSimplifier$VWVertex].isLive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>()"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$NoOpGeometryOperation].<init>()"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>(org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:95,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$NoOpGeometryOperation].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:95,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>(org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$NoOpGeometryOperation].<init>()"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>(org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:106,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$NoOpGeometryOperation].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:106,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>(org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>(org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:117,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].<init>(org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:131,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].setCopyUserData(boolean)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editInternal(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:161,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editInternal(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:163,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:163,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editInternal(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLinearRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLineString(org.locationtech.jts.geom.LineString)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:172,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:175,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:178,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:181,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:184,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLinearRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:187,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:286"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:285"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:297"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:269,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:277,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:278,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:279,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:279,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:280,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:283,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:286,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:287,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:287,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:291,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:298,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:247"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:234,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:247,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:247,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:249,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:252,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:253,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:254,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:258,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:262,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 479
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:480,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:480,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:195,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:198,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:202,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory$CoordSeqCloneOp].<init>(org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:661,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:662,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory$CoordSeqCloneOp].<init>(org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:662,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory$CoordSeqCloneOp].<init>(org.locationtech.jts.geom.CoordinateSequenceFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory$CoordSeqCloneOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateSequenceOperation].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory$CoordSeqCloneOp:667,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateSequenceOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLinearRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:221,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:224,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:208,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:211,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:215,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editInternal(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLinearRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLineString(org.locationtech.jts.geom.LineString)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:172,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:175,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:178,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:181,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:184,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLinearRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:187,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:190,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:195,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:198,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:202,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:208,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:211,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:215,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editLinearRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:221,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:224,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:247"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:234,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:247,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:247,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:248,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:249,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:252,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:253,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:254,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:258,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:262,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].editGeometryCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jtslab.geom.util.GeometryEditorEx"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:286"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:285"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.geom.util.GeometryEditorEx:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.geom.util.GeometryEditorEx:297"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:269,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx$GeometryEditorOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:277,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:278,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:279,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:279,1"
      Dst: "[org.locationtech.jtslab.geom.util.GeometryEditorEx].edit(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:280,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:283,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:286,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:287,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:287,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:291,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jtslab.geom.util.GeometryEditorEx:298,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:31,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:32,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:55,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:99,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:100,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:101,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:102,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:103,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:104,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:105,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:106,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:108,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:109,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:113,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:101,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:128,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:131,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:64,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:120,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:149,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:177,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:189,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:420"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:422"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:423"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:418,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:421,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 4
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:378"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:377"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:377,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:350"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:352"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:351"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:353"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:354"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:355"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:356"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:130,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:133,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].<init>(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:87,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:91,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:37,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:38,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:75,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:78,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:79,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:82,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:87,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:55,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:39,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:40,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:329"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:328"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:331"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:332"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:333"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:99,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:100,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:101,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:102,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:103,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:104,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:105,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:106,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:108,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:109,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:113,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:101,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:128,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:131,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:55,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:75,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:78,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:79,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:82,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:87,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:99,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:100,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:101,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:102,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:103,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:104,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:105,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:106,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:108,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:109,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:113,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareLocationValues(int,int,double)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:101,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:128,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:131,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$12].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$12:156,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$12].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$12:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.IOUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.IOUtil"
    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: "org.locationtech.jtstest.testbuilder.io.IOUtil:19,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKBHex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:23"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:24"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:23"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:24,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:24,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:24,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:227,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[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)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:303,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "org.locationtech.jts.io.WKBWriter:304,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:309,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:196,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.io.WKBWriter:202,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toGML(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:30"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:29"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:30,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:30,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    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: "org.locationtech.jts.io.gml2.GMLWriter:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:183,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:185,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:188,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:190,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKT(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].toString()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].setFormatted(boolean)"
    - "[org.locationtech.jts.io.WKTWriter].setMaxCoordinatesPerLine(int)"
    - "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:35"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:38,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:39,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].setFormatted(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:40,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].setMaxCoordinatesPerLine(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:41,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.GeometryFunctions$1].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.function.GeometryFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.GeometryFunctions$1:87,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.GeometryFunctions$1].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.GeometryFunctions$1"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.GeometryFunctions$1:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.GeometryFunctions$1:97"
        BranchSideFuncs:
        - "getNumInteriorRing()"
      - BranchSide: "org.locationtech.jtstest.function.GeometryFunctions$1:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.GeometryFunctions$1:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.GeometryFunctions$1:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.GeometryFunctions$1:92,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.function.GeometryFunctions$1:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.GeometryFunctions$1:93,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtstest.function.GeometryFunctions$1:93,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jtstest.function.GeometryFunctions$1:94,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.GeometryTextCleaner].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryTextCleaner"
    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: "org.locationtech.jtstest.util.GeometryTextCleaner:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.GeometryTextCleaner].cleanWKT(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryTextCleaner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.GeometryTextCleaner].clean(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:29,1"
      Dst: "[org.locationtech.jtstest.util.GeometryTextCleaner].clean(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.GeometryTextCleaner].clean(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryTextCleaner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.locationtech.jtstest.util.GeometryTextCleaner].isAllowed(char,java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:34,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:35,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:36,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:37,1"
      Dst: "[org.locationtech.jtstest.util.GeometryTextCleaner].isAllowed(char,java.lang.String)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:38,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:40,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.GeometryTextCleaner].isAllowed(char,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryTextCleaner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.lang.Character].isLetterOrDigit(char)"
    - "[java.lang.String].indexOf(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:45,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:46,1"
      Dst: "[java.lang.Character].isLetterOrDigit(char)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:47,1"
      Dst: "[java.lang.String].indexOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.GeometryTextCleaner].clean(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryTextCleaner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.locationtech.jtstest.util.GeometryTextCleaner].isAllowed(char,java.lang.String)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:34,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:35,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:36,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:37,1"
      Dst: "[org.locationtech.jtstest.util.GeometryTextCleaner].isAllowed(char,java.lang.String)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:38,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:40,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.GeometryTextCleaner].isAllowed(char,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.GeometryTextCleaner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.lang.Character].isLetterOrDigit(char)"
    - "[java.lang.String].indexOf(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.GeometryTextCleaner:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.GeometryTextCleaner:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:45,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:46,1"
      Dst: "[java.lang.Character].isLetterOrDigit(char)"
    - Src: "org.locationtech.jtstest.util.GeometryTextCleaner:47,1"
      Dst: "[java.lang.String].indexOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    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: "org.locationtech.jts.algorithm.hull.HullTriangulation:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].<init>()"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setSites(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getSubdivision()"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].toTris(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:43,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:44,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setSites(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:45,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getSubdivision()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:46,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].toTris(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    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: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:105,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setSites(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:117,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getSubdivision()"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:162,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].toTris(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].getTriangles()"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:51,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:52,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:53,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].getTriangles()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:54,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:61,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.TriangleVisitor"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].fetchTriangleToVisit(org.locationtech.jts.triangulate.quadedge.QuadEdge,java.util.Stack,boolean,java.util.Set)"
    - "[org.locationtech.jts.triangulate.quadedge.TriangleVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:682"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:691"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:684"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:689"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:687"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:689"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:677,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:678,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:680,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:682,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:683,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:684,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:685,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].fetchTriangleToVisit(org.locationtech.jts.triangulate.quadedge.QuadEdge,java.util.Stack,boolean,java.util.Set)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:688,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TriangleVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].getTriangles()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:34,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].toTris(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].getTriangles()"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:51,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:52,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:53,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].getTriangles()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:54,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].union(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:93,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:93,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:94,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:95,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:693,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:693,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:692,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.CoverageUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.CoverageUnion:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:69,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:80,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundaryPolygon(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundary(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:109,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:110,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:111,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:113,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundary(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:114,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:693,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:693,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:692,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundary(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].findBorderTri(java.util.List)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCCW()"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].nextBorderTri(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:128,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].findBorderTri(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:132,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCCW()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:134,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:134,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:134,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:135,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:137,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:142,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].nextBorderTri(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:144,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].findBorderTri(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.algorithm.hull.HullTri"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:149,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:149,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:149,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:150,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:152,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:577"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:577"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:577"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:578,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:587"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:588,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:514"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:515,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCCW()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:97,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:99,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:100,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:84,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].nextBorderTri(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.algorithm.hull.HullTri"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCW()"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:159,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCW()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:159,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:162,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:164,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:165,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:168,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCW()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:113,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:115,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:116,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:495,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:476"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:475"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundary(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].findBorderTri(java.util.List)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCCW()"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].nextBorderTri(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:128,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].findBorderTri(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:132,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCCW()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:134,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:134,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:134,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:135,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:137,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:142,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].nextBorderTri(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:144,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].findBorderTri(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.algorithm.hull.HullTri"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:149,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:149,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:149,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:150,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:152,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].nextBorderTri(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.algorithm.hull.HullTri"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCW()"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:159,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCW()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:159,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:162,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:164,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:165,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:168,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator"
    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: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:140,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:140,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:140,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:136,1"
      Dst: "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:140,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:140,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:140,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].<init>(org.locationtech.jtstest.function.SortingFunctions$1)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.function.SortingFunctions$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator:136,1"
      Dst: "[org.locationtech.jtstest.function.SortingFunctions$UserDataDoubleComparator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList$CLIterator].<init>(org.jdom2.ContentList)"
    functionSourceFile: "org.jdom2.ContentList$CLIterator"
    linkageType: null
    functionLinenumber: 674
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.ContentList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList$CLIterator:675,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.ContentList$CLIterator:676,1"
      Dst: "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList$CLIterator].hasNext()"
    functionSourceFile: "org.jdom2.ContentList$CLIterator"
    linkageType: null
    functionLinenumber: 680
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    functionUses: 191
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList$CLIterator:681"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList$CLIterator:680"
        BranchSideFuncs:
        - "access$200(org.jdom2.ContentList)"
    Callsites:
    - Src: "org.jdom2.ContentList$CLIterator:681,1"
      Dst: "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.ContentList"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList$CLIterator].next()"
    functionSourceFile: "org.jdom2.ContentList$CLIterator"
    linkageType: null
    functionLinenumber: 685
    functionDepth: 2
    returnType: "org.jdom2.Content"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    - "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    - "[org.jdom2.ContentList].access$300(org.jdom2.ContentList)"
    - "[java.util.ConcurrentModificationException].<init>(java.lang.String)"
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 195
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList$CLIterator:686"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList$CLIterator:690"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList$CLIterator:689"
        BranchSideFuncs:
        - "access$200(org.jdom2.ContentList)"
    - Branch String: "org.jdom2.ContentList$CLIterator:690"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList$CLIterator:694"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList$CLIterator:693"
        BranchSideFuncs:
        - "access$300(org.jdom2.ContentList)"
    Callsites:
    - Src: "org.jdom2.ContentList$CLIterator:686,1"
      Dst: "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    - Src: "org.jdom2.ContentList$CLIterator:687,1"
      Dst: "[java.util.ConcurrentModificationException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList$CLIterator:690,1"
      Dst: "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    - Src: "org.jdom2.ContentList$CLIterator:691,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList$CLIterator:695,1"
      Dst: "[org.jdom2.ContentList].access$300(org.jdom2.ContentList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.ContentList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].getModCount()"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:79,1"
      Dst: "[org.jdom2.ContentList].getModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].getModCount()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 157
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.ContentList"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].access$300(org.jdom2.ContentList)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "org.jdom2.Content[]"
    argCount: 1
    argTypes:
    - "org.jdom2.ContentList"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList$CLIterator].remove()"
    functionSourceFile: "org.jdom2.ContentList$CLIterator"
    linkageType: null
    functionLinenumber: 699
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    - "[org.jdom2.ContentList].remove(int)"
    - "[java.util.ConcurrentModificationException].<init>(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList$CLIterator:700"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList$CLIterator:704"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList$CLIterator:703"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList$CLIterator:704"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList$CLIterator:708"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList$CLIterator:707"
        BranchSideFuncs:
        - "remove(int)"
        - "access$100(org.jdom2.ContentList)"
    Callsites:
    - Src: "org.jdom2.ContentList$CLIterator:700,1"
      Dst: "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    - Src: "org.jdom2.ContentList$CLIterator:701,1"
      Dst: "[java.util.ConcurrentModificationException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList$CLIterator:705,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList$CLIterator:709,1"
      Dst: "[org.jdom2.ContentList].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.ContentList].access$100(org.jdom2.ContentList)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.ContentList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].getModCount()"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:79,1"
      Dst: "[org.jdom2.ContentList].getModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].remove(int)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 498
    functionDepth: 1
    returnType: "org.jdom2.Content"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - "[org.jdom2.ContentList].incModCount()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:499,1"
      Dst: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - Src: "org.jdom2.ContentList:502,1"
      Dst: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - Src: "org.jdom2.ContentList:503,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.jdom2.ContentList:505,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    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.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:187"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:186"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:190"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:194"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 510
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    - "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    - "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    - "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 3
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:511,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].incModCount()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList$CLIterator].<init>(org.jdom2.ContentList,org.jdom2.ContentList$1)"
    functionSourceFile: "org.jdom2.ContentList$CLIterator"
    linkageType: null
    functionLinenumber: 669
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ContentList"
    - "org.jdom2.ContentList$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$CLIterator].<init>(org.jdom2.ContentList)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList$CLIterator:670,1"
      Dst: "[org.jdom2.ContentList$CLIterator].<init>(org.jdom2.ContentList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$6].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:142,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$6].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$500(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$600(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$500(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$6:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$600(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ActionEvent].getModifiers()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272,1"
      Dst: "[java.awt.event.ActionEvent].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$500(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerDelete(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerDelete(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerDelete(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerDelete(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:245"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:244,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:246,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:246,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerDelete(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:247,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerDelete(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:572"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:571"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:575"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:574"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:569,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:570,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:154,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:150,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].removeAll()"
    - "[java.util.List].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:183,1"
      Dst: "[java.awt.Container].removeAll()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:184,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:202,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:203,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: "org.locationtech.jtstest.testbuilder.model.LayerList:60,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BorderFactory].createLineBorder(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:307,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:292,1"
      Dst: "[javax.swing.BorderFactory].createLineBorder(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:311,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:313,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerName].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel,org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].create(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[javax.swing.JPanel].<init>()"
    functionUses: 0
    ICount: 99
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:344,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:345,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:345,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:346,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:348,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:349,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:351,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:352,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:354,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:354,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:359,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:360,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerName].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:365,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:365,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:366,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:367,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:368,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:369,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel,org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:369,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:370,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:378,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].create(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:380,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:382,1"
      Dst: "[javax.swing.JPanel].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$1:354,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerName].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerName"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerName:432,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerName:432,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerName:434,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel,org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener:407,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel$2:371,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].create(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl:445,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].setFocusLayer(boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].showTabLayerStyle(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setLayer(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:208,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:208,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:208,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].setFocusLayer(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].showTabLayerStyle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:215,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setLayer(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].setFocusLayer(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].revalidate()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:328,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:329,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:330,1"
      Dst: "[javax.swing.JComponent].revalidate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:607,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].showTabLayerStyle(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:177,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setLayer(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:102,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:103,1"
      Dst: "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:104,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:224,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$600(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerClear(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerClear(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerClear(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].clear()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$FragmentHandler].<init>(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$FragmentHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].pushElement(org.jdom2.Element)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:370,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:363,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:375,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].pushElement(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$FragmentHandler].getResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$FragmentHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.transform.JDOMResult$FragmentHandler].getDetachedContent(org.jdom2.Element)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:388,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:391,1"
      Dst: "[org.jdom2.transform.JDOMResult$FragmentHandler].getDetachedContent(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - "[org.jdom2.input.sax.TextBuffer].toString()"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:801"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:806"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:805"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:802"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:808"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:807"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:802,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].isAllWhitespace()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:803,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:808,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.transform.JDOMResult$FragmentHandler].getDetachedContent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$FragmentHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$FragmentHandler:406"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$FragmentHandler:410"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:403,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:404,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:404,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:408,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:409,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Element].getContent()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 762
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$FragmentHandler].getDetachedContent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$FragmentHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getContent()"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$FragmentHandler:406"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$FragmentHandler:410"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:403,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:404,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:404,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:408,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:409,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineStringStyle].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineStringStyle].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintLineString(org.locationtech.jts.geom.LineString,int,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintHole(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintShell(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintHole(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintShell(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintHole(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].darker()"
    - "[java.awt.Graphics].create()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:75,1"
      Dst: "[java.awt.Color].darker()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:76,1"
      Dst: "[java.awt.Graphics].create()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:77,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:79,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:85,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:87,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:88,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.awt.ShapeWriter"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointShapeFactory$Point].<init>()"
    - "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.awt.ShapeWriter].setDecimation(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:94,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory$Point].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:94,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].<init>(org.locationtech.jts.awt.PointTransformation,org.locationtech.jts.awt.PointShapeFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:96,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].setDecimation(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    - "[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: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeWriter:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeWriter:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeWriter:170,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:170,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:171,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:172,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:173,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:174,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:175,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:177,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.awt.ShapeWriter:178,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintShell(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].darker()"
    - "[java.awt.Graphics].create()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:57,1"
      Dst: "[java.awt.Color].darker()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:58,1"
      Dst: "[java.awt.Graphics].create()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:59,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:61,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:62,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:64,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:65,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintShell(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].darker()"
    - "[java.awt.Graphics].create()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:57,1"
      Dst: "[java.awt.Color].darker()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:58,1"
      Dst: "[java.awt.Graphics].create()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:59,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:61,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:62,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:64,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:65,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle].paintHole(org.locationtech.jts.geom.LineString,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].darker()"
    - "[java.awt.Graphics].create()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:75,1"
      Dst: "[java.awt.Color].darker()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:76,1"
      Dst: "[java.awt.Graphics].create()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:77,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:79,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:85,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].getConverter(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:87,1"
      Dst: "[org.locationtech.jts.awt.ShapeWriter].toShape(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.PolygonStructureStyle:88,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionFinderAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionFinderAdder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:47,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionFinderAdder].getInteriorIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionFinderAdder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 39
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.IntersectionFinderAdder:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionFinderAdder:67"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.IntersectionFinderAdder:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionFinderAdder:67"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.IntersectionFinderAdder:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionFinderAdder:85"
        BranchSideFuncs:
        - "isInteriorIntersection()"
      - BranchSide: "org.locationtech.jts.noding.IntersectionFinderAdder:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionFinderAdder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionFinderAdder:85"
        BranchSideFuncs:
        - "getIntersectionNum()"
      - BranchSide: "org.locationtech.jts.noding.IntersectionFinderAdder:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionFinderAdder:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionFinderAdder:80"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:68,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:73,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:76,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:77,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:78,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:79,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:79,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.IntersectionFinderAdder:81,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionUses: 8
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:163,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:164,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.IntersectionFinderAdder].isDone()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].<init>()"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.StringBin].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.StringBin:124,1"
      Dst: "[org.jdom2.StringBin].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].<init>(int)"
    functionSourceFile: "org.jdom2.StringBin"
    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: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:132"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:136"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:140"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:139"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:142"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:146"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:131,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.StringBin:133,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].compareTo(java.lang.String)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:165"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:227"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:226"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:167"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:169"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:168"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:169"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:174"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:173"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:175"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:177"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:178"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:203"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:181"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:181"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:185"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:188"
      Branch Sides: []
    - Branch String: "org.jdom2.StringBin:204"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:221"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:204"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:221"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:207"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:210"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:167,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:174,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 24
  - functionName: "[org.jdom2.StringBin].reuse(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.StringBin].compact(java.lang.String)"
    - "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - "[org.jdom2.StringBin].rehash()"
    - "[org.jdom2.StringBin].reuse(java.lang.String)"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:239"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:276"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:290"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:294"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:298"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:299"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:242,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:278,1"
      Dst: "[org.jdom2.StringBin].compact(java.lang.String)"
    - Src: "org.jdom2.StringBin:289,1"
      Dst: "[org.jdom2.StringBin].locate(int,java.lang.String,java.lang.String[],int)"
    - Src: "org.jdom2.StringBin:296,1"
      Dst: "[org.jdom2.StringBin].rehash()"
    - Src: "org.jdom2.StringBin:297,1"
      Dst: "[org.jdom2.StringBin].reuse(java.lang.String)"
    - Src: "org.jdom2.StringBin:301,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.StringBin:304,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.jdom2.StringBin].rehash()"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:335"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:361"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:360"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:336"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:339"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:340"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:329"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:328"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:341"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:344"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:348"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:352"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:351"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.StringBin:352"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:356"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.StringBin:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.StringBin:345,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.jdom2.StringBin:353,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.jdom2.StringBin].compact(java.lang.String)"
    functionSourceFile: "org.jdom2.StringBin"
    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: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.StringBin:374,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "org.jdom2.StringBin:374,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.StringBin].size()"
    functionSourceFile: "org.jdom2.StringBin"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.StringBin:383"
      Branch Sides:
      - BranchSide: "org.jdom2.StringBin:385"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].<init>()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:50,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].setGeometryFactory(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBReader"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].read(byte[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.InputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:63,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:63,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.DataInput)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:67,1"
      Dst: "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:67,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:72,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readHeader(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryBody(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:79,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:82,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readHeader(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:83,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryBody(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readHeader(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.io.DataInput].readByte()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(int)"
    - "[org.locationtech.jts.io.twkb.Varint].zigzagDecode(int)"
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasIdList(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:87,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:88,1"
      Dst: "[java.io.DataInput].readByte()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:90,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:91,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].zigzagDecode(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:113,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:115,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:116,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:117,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:118,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:119,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:120,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:121,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:122,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasIdList(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:123,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:124,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:125,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:126,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 26
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].zigzagDecode(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    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: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInput].readByte()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.Varint:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:182,1"
      Dst: "[java.io.DataInput].readByte()"
    - Src: "org.locationtech.jts.io.twkb.Varint:186,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasIdList(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryBody(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].createEmpty(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipBbox(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    - "[java.lang.Enum].ordinal()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readMultiLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryCollection(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:131,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:132,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:133,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].createEmpty(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:135,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:136,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipBbox(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:138,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:140,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:142,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:142,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:144,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:146,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:148,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:150,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:152,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryCollection(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:154,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].createEmpty(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.function.Function].apply(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:218,1"
      Dst: "[java.util.function.Function].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].skipBbox(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:269,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:271,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:254"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:124,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInput].readByte()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.Varint:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:145,1"
      Dst: "[java.io.DataInput].readByte()"
    - Src: "org.locationtech.jts.io.twkb.Varint:149,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:160,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:161,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:163,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:164,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:165,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:166,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:168,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "int"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:308"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:304,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:305,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:306,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:308,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:309,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:311,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:311,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:311,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:313,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[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()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:265,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 281
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:282,1"
      Dst: "[org.locationtech.jts.geom.Point].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:173,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:174,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:278,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:279,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "int"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:285,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:286,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:289,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:291,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:293,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:295,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readLinearRing(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:189,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:191,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:193,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readLinearRing(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:198,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readLinearRing(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:180,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:181,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:182,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:182,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:184,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:105,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:111,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:134,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:136,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:203,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:204,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:205,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:208,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:207,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:209,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].readIdList(int,long[],java.io.DataInput)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:255,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readIdList(int,long[],java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readIdList(int,long[],java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long[]"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:261,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getMeasures()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:442"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:441"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:448"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:440,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:442,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:444,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:446,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:447,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:214,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:215,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:216,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:219,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:221,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:223,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:228,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:229,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:230,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:232,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:235,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryCollection(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:247"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:243,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:244,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:245,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:249,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:251,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    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: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:27,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.DataInput)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:67,1"
      Dst: "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:67,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].read(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:72,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:74,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readHeader(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryBody(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:79,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:82,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readHeader(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:83,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryBody(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readHeader(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.io.DataInput].readByte()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(int)"
    - "[org.locationtech.jts.io.twkb.Varint].zigzagDecode(int)"
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasIdList(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:87,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:88,1"
      Dst: "[java.io.DataInput].readByte()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:90,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:91,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].zigzagDecode(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:113,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:115,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:116,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:117,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:118,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:119,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:120,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:121,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:122,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasIdList(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:123,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:124,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:125,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:126,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 26
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryBody(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].createEmpty(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipBbox(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    - "[java.lang.Enum].ordinal()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readMultiLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryCollection(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:131,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:132,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:133,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].createEmpty(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:135,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:136,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipBbox(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:138,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:140,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:142,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:142,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:144,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:146,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:148,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:150,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:152,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryCollection(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:154,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:160,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:161,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:163,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:164,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:165,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:166,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:168,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:173,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:174,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readLinearRing(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:180,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:181,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:182,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:182,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:184,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readLinearRing(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:189,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:191,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:193,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readLinearRing(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:198,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPoint(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:203,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:204,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:205,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:208,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:207,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:209,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:214,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:215,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:216,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:219,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:221,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readLineString(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:223,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readMultiPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:228,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:229,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:230,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:232,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:235,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readPolygon(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readGeometryCollection(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:247"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:243,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:244,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:245,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:249,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].read(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:251,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].skipIdList(int,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].readIdList(int,long[],java.io.DataInput)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:255,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readIdList(int,long[],java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readIdList(int,long[],java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long[]"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:261,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].skipBbox(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:269,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:271,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:278,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:279,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].readCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,java.io.DataInput,int,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.io.DataInput"
    - "int"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:285,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:286,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:289,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:291,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:293,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:295,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.TWKBReader].createCoordinateSequence(org.locationtech.jts.geom.GeometryFactory,int,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "int"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:308"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBReader:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBReader:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:304,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:305,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:306,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:308,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:309,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:311,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:311,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:311,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBReader:313,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformationBuilder:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].getTransformation()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformationBuilder].compute()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double,double,double,double,double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformationBuilder:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformationBuilder:93,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].compute()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationBuilder:95,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double,double,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].compute()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformationBuilder].solve(double[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformationBuilder:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformationBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformationBuilder:110,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].solve(double[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].solve(double[])"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double[]"
    argCount: 1
    argTypes:
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Matrix].solve(double[][],double[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformationBuilder:139,1"
      Dst: "[org.locationtech.jts.math.Matrix].solve(double[][],double[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Matrix].solve(double[][],double[])"
    functionSourceFile: "org.locationtech.jts.math.Matrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double[]"
    argCount: 2
    argTypes:
    - "double[][]"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.math.Matrix].swapRows(double[][],int,int)"
    - "[org.locationtech.jts.math.Matrix].swapRows(double[],int,int)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Matrix:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:79"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.math.Matrix:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Matrix:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Matrix:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Matrix:92"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.math.Matrix:58,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.Matrix:66,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.math.Matrix:73,1"
      Dst: "[org.locationtech.jts.math.Matrix].swapRows(double[][],int,int)"
    - Src: "org.locationtech.jts.math.Matrix:74,1"
      Dst: "[org.locationtech.jts.math.Matrix].swapRows(double[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:293,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:294,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setTransformation(double,double,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].compute()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformationBuilder].solve(double[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformationBuilder:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformationBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationBuilder:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformationBuilder:110,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].solve(double[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformationBuilder].solve(double[])"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double[]"
    argCount: 1
    argTypes:
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Matrix].solve(double[][],double[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformationBuilder:139,1"
      Dst: "[org.locationtech.jts.math.Matrix].solve(double[][],double[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.CoordinateArrayFilter].<init>(int)"
    functionSourceFile: "org.locationtech.jts.util.CoordinateArrayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.CoordinateArrayFilter:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.CoordinateArrayFilter].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.util.CoordinateArrayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.CoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.CoordinateArrayFilter"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:28"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:32,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:32,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].gestureFinished()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].isControlKeyDown()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].getBox()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].extractComponentsToTestCase(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:37,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].isControlKeyDown()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].getBox()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].extractComponentsToTestCase(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].extractComponentsToTestCase(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponents(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].selectZoomButton()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponents(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].selectZoomButton()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponents(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].extractComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].extractComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.test.TestCase].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.test.Testable].setName(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:59,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:60,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:63,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].<init>()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCase:48,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:451,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:541,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:312,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:313,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.DefaultListModel].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestListPanel:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:159,1"
      Dst: "[javax.swing.DefaultListModel].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:163,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:164,1"
      Dst: "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].selectZoomButton()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.AbstractButton].getModel()"
    - "[javax.swing.ButtonGroup].setSelected(javax.swing.ButtonModel,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:88,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:89,1"
      Dst: "[javax.swing.AbstractButton].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:89,1"
      Dst: "[javax.swing.ButtonGroup].setSelected(javax.swing.ButtonModel,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].<init>(double,java.awt.Cursor)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].<init>(double,java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:49,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:120,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:145,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:147,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:148,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:151,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:154,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:159,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:61,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:61,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:62,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:75,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:75,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:76,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:88,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:89,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:103,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:104,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:120,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].extractFactory(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:132,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:134,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:145,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:146,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:147,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:148,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:151,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:154,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:159,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryCombiner:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryCombiner:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:168,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:171,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$1].<init>(org.locationtech.jts.index.kdtree.KdTree,java.util.List)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$1"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdTree"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree$1:395,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$1].visit(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$1"
    linkageType: null
    functionLinenumber: 397
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree$1:398,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getEdgesBetween(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].toEdges(java.util.Collection)"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.Set].retainAll(java.util.Collection)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:38,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.planargraph.Node:38,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.planargraph.Node:38,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].toEdges(java.util.Collection)"
    - Src: "org.locationtech.jts.planargraph.Node:39,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.planargraph.Node:41,1"
      Dst: "[java.util.Set].retainAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:86,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].sort(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.DirectedEdgeStar:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:93,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].toEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.DirectedEdge:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdge:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdge:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:43,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:44,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:44,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:45,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdge:45,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:56,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].<init>()"
    - Src: "org.locationtech.jts.planargraph.Node:56,1"
      Dst: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.planargraph.DirectedEdgeStar)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.planargraph.DirectedEdgeStar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:63,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].add(org.locationtech.jts.planargraph.DirectedEdge)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:78,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].add(org.locationtech.jts.planargraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getDegree()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getDegree()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:88,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getDegree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].getIndex(org.locationtech.jts.planargraph.Edge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getIndex(org.locationtech.jts.planargraph.Edge)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:95,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getIndex(org.locationtech.jts.planargraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getIndex(org.locationtech.jts.planargraph.Edge)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.DirectedEdgeStar:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.planargraph.DirectedEdgeStar:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:103,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:104,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:105,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:106,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].sort(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.DirectedEdgeStar:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.DirectedEdgeStar:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:93,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].remove(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].remove(org.locationtech.jts.planargraph.DirectedEdge)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:104,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].remove(org.locationtech.jts.planargraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].remove(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:54,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].remove()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Node].isRemoved()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.Node:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.Node:121"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:42,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:42,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:45,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].<init>()"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    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: "org.locationtech.jtstest.clean.CleanDuplicatePoints:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.GeometryCollection)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:56,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:60,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 19
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:71,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:71,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:72,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:40,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:42,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:42,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:45,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:77,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:77,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:83,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:83,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:86,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:87,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:90,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:90,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:135,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:136,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:104,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:105,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:106,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:107,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:107,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:146,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:147,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:95,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:96,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:98,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:98,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:100,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:100,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:157,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:158,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:113,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:114,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:115,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:116,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:116,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:71,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:71,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:72,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:77,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:77,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:83,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:83,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].removeDuplicatePoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:86,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:87,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:90,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:90,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:95,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:96,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:98,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:98,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:100,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:100,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:104,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:105,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:106,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:107,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:107,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:113,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:114,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:115,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:116,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:116,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:118,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].<init>(org.locationtech.jtstest.testbuilder.ui.render.Renderer,java.awt.Image)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.Renderer"
    - "java.awt.Image"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].construct()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Image].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.Renderer].render(java.awt.Graphics2D)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker:143,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.Renderer].render(java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].isRendering()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].cancel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.Renderer].cancel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker:156,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.Renderer].cancel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$28].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:515,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$28].stateChanged(javax.swing.event.ChangeEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.SpinnerNumberModel].getNumber()"
    - "[java.lang.Number].intValue()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:517,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:517,1"
      Dst: "[javax.swing.SpinnerNumberModel].getNumber()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:517,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:518,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:518,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:518,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:519,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$28:519,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.SpinnerNumberModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setLabelSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonConstants].<init>()"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonConstants"
    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: "org.locationtech.jts.io.geojson.GeoJsonConstants:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    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: "org.locationtech.jtstest.function.PrecisionFunctions:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].reducePrecisionPointwise(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reducePointwise(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:29,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:30,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reducePointwise(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reducePointwise(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].setPointwise(boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:122,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:123,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setPointwise(boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:124,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setPointwise(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:192,1"
      Dst: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:195,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:200,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:29,1"
      Dst: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:30,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:35,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - "[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: 55
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:120"
        BranchSideFuncs:
        - "transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:122"
        BranchSideFuncs:
        - "transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:124"
        BranchSideFuncs:
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:126"
        BranchSideFuncs:
        - "transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:128"
        BranchSideFuncs:
        - "transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:130"
        BranchSideFuncs:
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:132"
        BranchSideFuncs:
        - "transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:135"
        BranchSideFuncs:
        - "transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:119,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:123,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:127,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:129,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:131,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:133,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:40,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:41,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel,boolean)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:47,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].createEditor(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:215,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:215,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createEditor(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:217,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation].<init>()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:217,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createEditor(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.GeometryEditor"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].createFactory(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:223,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:224,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:226,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createFactory(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:227,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createFactory(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation"
    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: "org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation:263,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].reducePrecision(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:39,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:82,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:83,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:192,1"
      Dst: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:195,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:200,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].reducePrecisionKeepCollapsed(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduceKeepCollapsed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:47,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:48,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduceKeepCollapsed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduceKeepCollapsed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].setRemoveCollapsedComponents(boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:101,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:102,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setRemoveCollapsedComponents(boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:103,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setRemoveCollapsedComponents(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:192,1"
      Dst: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:195,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:200,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].minClearanceLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:54,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.MinimumClearance].getLine()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:130,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:131,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].minClearance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:59,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.MinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.MinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.MinimumClearance].getDistance()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.MinimumClearance:115,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.MinimumClearance:116,1"
      Dst: "[org.locationtech.jts.precision.MinimumClearance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].minClearanceSimpleLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:64,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:49,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:50,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].getLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PrecisionFunctions].minClearanceSimple(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PrecisionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PrecisionFunctions:69,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:43,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:44,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].<init>(java.util.Iterator,javax.xml.stream.XMLEventFactory)"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Iterator"
    - "javax.xml.stream.XMLEventFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator:131,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 191
    ICount: 4
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator:138,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 1
    returnType: "javax.xml.stream.events.Namespace"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.Iterator].next()"
    - "[javax.xml.stream.XMLEventFactory].createNamespace(java.lang.String,java.lang.String)"
    functionUses: 195
    ICount: 9
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator:144,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator:144,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator:144,1"
      Dst: "[javax.xml.stream.XMLEventFactory].createNamespace(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].remove()"
    functionSourceFile: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator:149,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    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: "org.locationtech.jtstest.function.ValidationFunctions:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].invalidLocations(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.valid.TopologyValidationError].getCoordinate()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.ValidationFunctions:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ValidationFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:40,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:41,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:43,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:44,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.valid.TopologyValidationError].getCoordinate()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:46,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:49,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.operation.valid.TopologyValidationError"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:140,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.TopologyValidationError].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.valid.TopologyValidationError"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].invalidGeoms(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.ValidationFunctions:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ValidationFunctions:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:54,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:56,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:57,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:58,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:60,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:63,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:63,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].getValidationError()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.operation.valid.TopologyValidationError"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:140,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].isValidAllowInvertedRing(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].setSelfTouchingRingFormingHoleValid(boolean)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:67,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:68,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].setSelfTouchingRingFormingHoleValid(boolean)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:69,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].setSelfTouchingRingFormingHoleValid(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValid()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 17
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:127,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsValidOp].isValidGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsValidOp"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 16
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPoint)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 46
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:159"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.Point)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:161"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPoint)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:160"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPoint)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:162"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:161"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:163"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:162"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.LineString)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:164"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:163"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.Polygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:165"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPolygon)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:164"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.MultiPolygon)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:166"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.GeometryCollection)"
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:165"
        BranchSideFuncs:
        - "isValid(org.locationtech.jts.geom.GeometryCollection)"
    - Branch String: "org.locationtech.jts.operation.valid.IsValidOp:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsValidOp:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:160,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:161,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPoint)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:162,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:163,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:164,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:165,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:166,1"
      Dst: "[org.locationtech.jts.operation.valid.IsValidOp].isValid(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:169,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:169,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.operation.valid.IsValidOp:169,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].fixInvalid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 33
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 32
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:88,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].fixIfInvalid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 33
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.ValidationFunctions:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ValidationFunctions:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:77,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 32
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:88,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fix(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].fixInvalidKeepCollapse(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 31
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:84,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:85,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:117,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:119,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].setKeepCollapsed(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryFixer].getResult()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryFixer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 30
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryFixer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryFixer:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:156,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:157,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:160,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:162,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLinearRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:163,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:164,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:165,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:166,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:167,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:168,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryFixer].fixCollection(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryFixer:169,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 19
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].isSimple(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:89,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:96,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:97,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:124,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:136,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:156,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:188,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:189,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimplePolygonal(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleGeometryCollection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:198"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:194,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:196,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:198,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:199,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimplePolygonal(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:200,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleGeometryCollection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].<init>(boolean,boolean,java.util.List)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].hasIntersection()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:273,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:274,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].<init>(boolean,boolean,java.util.List)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:275,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:276,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:277,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:278,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].hasIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].trimRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:285,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:286,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:287,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:288,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:288,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].trimRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:290,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:291,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].trimRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateArrays].extract(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:302,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:322,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].extract(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].extract(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:635"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:636"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:635"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:637"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:636"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:637"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:638"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:640"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:641"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:643"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:645"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:631,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:48"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].<init>(boolean,boolean,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:335,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:332,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:348,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[java.util.HashSet].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:209,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:210,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:211,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:212,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:213,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:214,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:220,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 56
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:96"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimplePolygonal(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:236,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:237,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:237,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:237,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:238,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleGeometryCollection(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:258,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:259,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:260,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].nonSimpleAllPoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].setFindAllLocations(boolean)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocations()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:94,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:95,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].setFindAllLocations(boolean)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:96,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocations()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:97,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:124,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].setFindAllLocations(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocations()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:182,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:188,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:189,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].nonSimplePoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:102,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:103,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:104,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:104,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:124,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:170,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:171,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:172,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:188,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:189,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.ValidationFunctions].nonSimpleEndpoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ValidationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].setFindAllLocations(boolean)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocations()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:109,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:110,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].setFindAllLocations(boolean)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:111,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocations()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.ValidationFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:136,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].setFindAllLocations(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocations()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:182,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:51,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:54,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:55,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].setZ(double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:75,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].toString()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:83,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:83,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:83,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:87,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:87,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:95,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:95,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].classify(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].sub(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].crossProduct(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].magn()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:104,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].sub(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:106,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].crossProduct(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:111,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:111,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:113,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].magn()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:115,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 14
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].sub(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:159,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:159,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:159,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:51,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].crossProduct(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:129,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:129,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].magn()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:164,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:87,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:87,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].crossProduct(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:129,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:129,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].dot(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:139,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:139,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].times(double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:149,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:51,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].sum(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:51,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].sub(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:159,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:159,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:159,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].magn()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:164,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].cross()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:169,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:51,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:188,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TrianglePredicate].isInCircleRobust(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:214"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:225,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:225,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:225,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].leftOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:229,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:229,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:229,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:351,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdge:351,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].isCCW(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:214"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].bisector(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.HCoordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.algorithm.HCoordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:234,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:235,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:236,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:238,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.HCoordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.HCoordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.HCoordinate:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.HCoordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.HCoordinate"
    - "org.locationtech.jts.algorithm.HCoordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.HCoordinate:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].distance(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:242,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:242,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:243,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:242,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].circumRadiusRatio(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].circleCenter(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].distance(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:263"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.Vertex:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.Vertex:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:257,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].circleCenter(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:258,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].distance(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].circleCenter(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].bisector(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    - "[org.locationtech.jts.algorithm.HCoordinate].getX()"
    - "[org.locationtech.jts.algorithm.HCoordinate].getY()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:292,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:292,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:292,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:294,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].bisector(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:298,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:301,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:301,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:51,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].bisector(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.HCoordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.algorithm.HCoordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:234,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:235,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:236,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:238,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.HCoordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.HCoordinate"
    - "org.locationtech.jts.algorithm.HCoordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.HCoordinate:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.HCoordinate].getX()"
    functionSourceFile: "org.locationtech.jts.algorithm.HCoordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[org.locationtech.jts.algorithm.NotRepresentableException].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.HCoordinate:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.HCoordinate:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.HCoordinate:149,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.algorithm.HCoordinate:149,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.algorithm.HCoordinate:150,1"
      Dst: "[org.locationtech.jts.algorithm.NotRepresentableException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.NotRepresentableException].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.NotRepresentableException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.NotRepresentableException:24,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.HCoordinate].getY()"
    functionSourceFile: "org.locationtech.jts.algorithm.HCoordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[org.locationtech.jts.algorithm.NotRepresentableException].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.HCoordinate:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.HCoordinate:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.HCoordinate:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.HCoordinate:157,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.algorithm.HCoordinate:157,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.algorithm.HCoordinate:158,1"
      Dst: "[org.locationtech.jts.algorithm.NotRepresentableException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].distance(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:242,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:242,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:243,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:242,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].midPoint(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double,double)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:278,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:279,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:280,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:280,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:281,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:54,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:55,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].circleCenter(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].bisector(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    - "[org.locationtech.jts.algorithm.HCoordinate].getX()"
    - "[org.locationtech.jts.algorithm.HCoordinate].getY()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:292,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:292,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:292,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(double,double)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:294,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].bisector(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:298,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].<init>(org.locationtech.jts.algorithm.HCoordinate,org.locationtech.jts.algorithm.HCoordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:301,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:301,1"
      Dst: "[org.locationtech.jts.algorithm.HCoordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].interpolateZValue(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:314,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:315,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:325,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].interpolateZ(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:354,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].interpolateZ(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:367,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:369,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:98,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:99,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:138,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:141,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate()"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:161,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:162,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:164,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:165,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:172,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:172,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:173,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:175,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:177,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:204,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:206,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PolygonExtracter:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:43"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PolygonExtracter:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:48"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.GeometryFilter)"
        - "<init>(java.util.List)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:41,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:44,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:32,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:33,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Polygon,java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:38,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:38,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:38,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:39,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Polygon,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Polygon,java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.coverage.CoverageRing].addRing(org.locationtech.jts.geom.LinearRing,boolean,java.util.List)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:45,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:47,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:47,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].addRing(org.locationtech.jts.geom.LinearRing,boolean,java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:48,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:49,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].addRing(org.locationtech.jts.geom.LinearRing,boolean,java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.coverage.CoverageRing].createRing(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:54,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:56,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRing(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:56,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].createRing(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.coverage.CoverageRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.coverage.CoverageRing].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:60,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:61,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRing:62,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRing:64,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRing:66,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:425"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:420"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:418"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:419,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:421,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 2
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:440"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:439"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:445"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:444"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:443"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:442"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:439,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:440,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:442,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:443,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:89,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:91,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 60
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:211,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.coverage.CoverageRing].isKnown(java.util.List)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteractingSegments(java.util.List,java.util.List,double)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteriorSegments(java.util.List,java.util.List)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:181,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:192,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isKnown(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:199,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteractingSegments(java.util.List,java.util.List,double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:200,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteriorSegments(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,org.locationtech.jts.geom.Envelope,java.util.Map)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:234,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:235,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,org.locationtech.jts.geom.Envelope,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,org.locationtech.jts.geom.Envelope,java.util.Map)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].create(org.locationtech.jts.coverage.CoverageRing,int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].match(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:250,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:250,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:250,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:251,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:252,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:255,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:259,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].create(org.locationtech.jts.coverage.CoverageRing,int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:260,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:261,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:266,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].match(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:270,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 62
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 59
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:575"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:582"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:569,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 23
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].create(org.locationtech.jts.coverage.CoverageRing,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.coverage.CoverageRing"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.coverage.CoverageRing].isInteriorOnRight()"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.coverage.CoverageRing,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:287,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:290,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isInteriorOnRight()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:291,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.coverage.CoverageRing,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].isInteriorOnRight()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: 101
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.coverage.CoverageRing,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.coverage.CoverageRing"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].reverse()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:305,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:307,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:308,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].match(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].checkInvalid(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    - "[org.locationtech.jts.coverage.CoverageRing].markMatched(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:329"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:328"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:319,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].checkInvalid(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:333,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].markMatched(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].checkInvalid(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRing].markInvalid(int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:338"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:338"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment:339,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].markInvalid(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].markInvalid(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "void"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].markMatched(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].isKnown(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.CoverageRing].isKnown()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:77,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:77,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:77,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:78,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isKnown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].isKnown()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:132"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteractingSegments(java.util.List,java.util.List,double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].<init>(double)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection,double)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:366,1"
      Dst: "[org.locationtech.jts.coverage.InvalidSegmentDetector].<init>(double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:367,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection,double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:368,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.InvalidSegmentDetector].<init>(double)"
    functionSourceFile: "org.locationtech.jts.coverage.InvalidSegmentDetector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.InvalidSegmentDetector:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection,double)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:43,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:58,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:79"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "size()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:78"
        BranchSideFuncs:
        - "build()"
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:75"
        BranchSideFuncs:
        - "addToIndex(org.locationtech.jts.noding.SegmentString)"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:74,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:76,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:79,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:105"
        BranchSideFuncs:
        - "addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:104"
        BranchSideFuncs:
        - "intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:101,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:102,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:102,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:103,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:103,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:105,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.NodedSegmentString:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getCoordinates()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:113"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:119"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:112,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:114,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:114,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:115,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:115,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:116,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:117,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainBuilder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:55"
        BranchSideFuncs:
        - "findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:57,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].isDone()"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].isDone()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].isDone()"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].isDone()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].isDone()"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].isDone()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].isDone()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    - "[org.locationtech.jts.noding.IntersectionAdder].isDone()"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].isDone()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    functionUses: 1
    ICount: 27
    EdgeCount: 79
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:135"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:134"
        BranchSideFuncs:
        - "next()"
        - "isDone()"
        - "computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:123,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:125,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:125,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:126,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:127,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:128,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:131,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:132,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction:143,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:22,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainOverlapAction:24,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:159"
        BranchSideFuncs:
        - "expandBy(double)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:155,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:232,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "double"
    - "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:286,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteriorSegments(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.coverage.CoverageRing].isKnown(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].isInteriorVertex(org.locationtech.jts.geom.Coordinate,java.util.List)"
    - "[org.locationtech.jts.coverage.CoverageRing].markInvalid(int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:400"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:399"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:378"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:391"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:379,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:379,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:379,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:380,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:382,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isKnown(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:390,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:391,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].isInteriorVertex(org.locationtech.jts.geom.Coordinate,java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:392,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].markInvalid(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].isKnown(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:182"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].isInteriorVertex(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].polygonContainsPoint(int,org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:417"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:423"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:422"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:417,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:418,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:420,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].polygonContainsPoint(int,org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].polygonContainsPoint(int,org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].getLocator(int,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:428"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:427,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:427,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:429,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].getLocator(int,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:430,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].getLocator(int,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:439"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:436,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.CoverageRing].createInvalidLines(org.locationtech.jts.geom.GeometryFactory,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].createEmptyResult()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:444"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:448"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:447"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:451"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:453"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:443,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:444,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:444,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:444,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:445,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createInvalidLines(org.locationtech.jts.geom.GeometryFactory,java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:448,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:449,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createEmptyResult()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:452,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:454,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:454,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].createInvalidLines(org.locationtech.jts.geom.GeometryFactory,java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRing].hasInvalid()"
    - "[org.locationtech.jts.coverage.CoverageRing].isInvalid()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.coverage.CoverageRing].createLine(int,int,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoverageRing].findInvalidStart(int)"
    - "[org.locationtech.jts.coverage.CoverageRing].findInvalidEnd(int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:247,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].hasInvalid()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:251,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isInvalid()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:252,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:252,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createLine(int,int,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:253,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:258,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].findInvalidStart(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:259,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].findInvalidEnd(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].hasInvalid()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:168"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].isInvalid()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:155"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].createLine(int,int,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRing].extractSectionWrap(int,int)"
    - "[org.locationtech.jts.coverage.CoverageRing].extractSection(int,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:304,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].extractSectionWrap(int,int)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:305,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].extractSection(int,int)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].extractSectionWrap(int,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.coverage.CoverageRing].nextMarkIndex(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:320,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:324,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:324,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.coverage.CoverageRing:325,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].nextMarkIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].nextMarkIndex(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:289"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].extractSection(int,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:314,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:314,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].findInvalidStart(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRing].isInvalid(int)"
    - "[org.locationtech.jts.coverage.CoverageRing].nextMarkIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:272,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isInvalid(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:273,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].nextMarkIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].isInvalid(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRing].findInvalidEnd(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRing].nextMarkIndex(int)"
    - "[org.locationtech.jts.coverage.CoverageRing].isInvalid(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRing:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRing:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRing:279,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].nextMarkIndex(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRing:280,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isInvalid(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createEmptyResult()"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:146,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:147,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[],double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].setGapWidth(double)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:116,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:117,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].setGapWidth(double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:118,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:138,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:141,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].setGapWidth(double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate()"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:161,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:162,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:164,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:165,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:172,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:172,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:173,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:175,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:177,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:138,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:141,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].setGapWidth(double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].validate()"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:161,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:162,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:164,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:165,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createRings(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:172,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:172,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:173,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:175,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:177,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].checkTargetRings(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.coverage.CoverageRing].isKnown(java.util.List)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteractingSegments(java.util.List,java.util.List,double)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteriorSegments(java.util.List,java.util.List)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:181,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:192,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isKnown(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:199,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteractingSegments(java.util.List,java.util.List,double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:200,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteriorSegments(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].extractPolygons(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:204,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:206,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createEmptyResult()"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,java.util.List,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,org.locationtech.jts.geom.Envelope,java.util.Map)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:234,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:235,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,org.locationtech.jts.geom.Envelope,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markMatchedSegments(java.util.List,org.locationtech.jts.geom.Envelope,java.util.Map)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].create(org.locationtech.jts.coverage.CoverageRing,int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].match(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:250,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:250,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:250,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:251,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:252,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:255,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:259,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].create(org.locationtech.jts.coverage.CoverageRing,int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:260,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:261,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:266,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment].match(org.locationtech.jts.coverage.CoveragePolygonValidator$CoverageRingSegment)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:270,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteractingSegments(java.util.List,java.util.List,double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].<init>(double)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection,double)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:366,1"
      Dst: "[org.locationtech.jts.coverage.InvalidSegmentDetector].<init>(double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:367,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection,double)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:368,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].markInvalidInteriorSegments(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.coverage.CoverageRing].isKnown(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].isInteriorVertex(org.locationtech.jts.geom.Coordinate,java.util.List)"
    - "[org.locationtech.jts.coverage.CoverageRing].markInvalid(int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:400"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:399"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:378"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:391"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:379,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:379,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:379,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:380,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:382,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].isKnown(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:390,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:391,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].isInteriorVertex(org.locationtech.jts.geom.Coordinate,java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:392,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].markInvalid(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].isInteriorVertex(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].polygonContainsPoint(int,org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:417"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:423"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:422"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:417,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:418,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:420,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].polygonContainsPoint(int,org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].polygonContainsPoint(int,org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].getLocator(int,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:428"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:427,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:427,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:429,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].getLocator(int,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:430,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].getLocator(int,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:439"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:436,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createInvalidLines(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoveragePolygonValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.CoverageRing].createInvalidLines(org.locationtech.jts.geom.GeometryFactory,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.coverage.CoveragePolygonValidator].createEmptyResult()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:444"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:448"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:447"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoveragePolygonValidator:451"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoveragePolygonValidator:453"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:443,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:444,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:444,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:444,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:445,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRing].createInvalidLines(org.locationtech.jts.geom.GeometryFactory,java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:448,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:449,1"
      Dst: "[org.locationtech.jts.coverage.CoveragePolygonValidator].createEmptyResult()"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:452,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:454,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.coverage.CoveragePolygonValidator:454,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:34,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].setIgnoreInvalidLines(boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].setFixInvalidLines(boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:75,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:86,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].getLastCoordinate()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].validCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:101,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:105,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:108,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].validCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:122,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].validCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearGeometryBuilder:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearGeometryBuilder:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearGeometryBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearGeometryBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearGeometryBuilder].endLine()"
    - Src: "org.locationtech.jts.linearref.LinearGeometryBuilder:136,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    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: "org.locationtech.jtstest.function.SpatialIndexFunctions:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeQuery(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:46,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:49,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:50,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:192,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:193,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:195,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 7
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:147,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:381,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:382,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:69,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:412,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getMeasures()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:442"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:441"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:448"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:440,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:442,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:444,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:446,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:447,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeQueryCached(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:60,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:65,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:65,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:66,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:67,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:67,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:192,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:193,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:195,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:381,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:382,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:69,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:412,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeQueryRepeated(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:72,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:75,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:76,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:77,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:77,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:192,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:193,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:195,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:381,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:382,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].toCoordinates(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:85,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:87,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:89,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:92,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:412,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraphSeed(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTreeSeed(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:81,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTreeSeed(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:81,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTreeSeed(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:201,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:208,1"
      Dst: "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:210,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].quasirandom(double,double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:173,1"
      Dst: "[org.locationtech.jts.math.MathUtil].quasirandom(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].quasirandom(double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].floor(double)"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:197,1"
      Dst: "[java.lang.Math].floor(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 7
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:147,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:89,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:90,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:94,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:94,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:95,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    - "boolean"
    - "int"
    - "double"
    - "double"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:102,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:105,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:105,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:108,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:109,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:111,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:85,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:85,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:192,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:193,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:195,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:89,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:90,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:94,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:94,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:95,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeGraph(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:89,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:90,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:94,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:94,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:95,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    - "boolean"
    - "int"
    - "double"
    - "double"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:102,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:105,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:105,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:108,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:109,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addGraphEdges(org.locationtech.jts.index.kdtree.KdNode,boolean,int,double,double,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:111,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:123,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:123,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:192,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:193,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:195,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:131,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:132,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:133,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:135,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:135,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:136,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    - "boolean"
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].createSplitLine(org.locationtech.jts.geom.Envelope,double,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].splitExtent(org.locationtech.jts.geom.Envelope,double,boolean,boolean)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:141,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:142,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].createSplitLine(org.locationtech.jts.geom.Envelope,double,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:143,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:145,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:147,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].splitExtent(org.locationtech.jts.geom.Envelope,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:147,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:149,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:92"
        BranchSideFuncs:
        - "getX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:91"
        BranchSideFuncs:
        - "getY()"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:92,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].createSplitLine(org.locationtech.jts.geom.Envelope,double,boolean,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    - "boolean"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:182,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:183,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:184,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:185,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:187,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:188,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].splitExtent(org.locationtech.jts.geom.Envelope,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:158,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:159,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:176,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplitsSeed(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTreeSeed(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:127,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTreeSeed(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:127,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTreeSeed(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:201,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:208,1"
      Dst: "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:210,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:131,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:132,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:133,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:135,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:135,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:136,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].kdTreeSplits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.kdtree.KdTree)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.kdtree.KdTree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:131,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:132,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].getRoot()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:133,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:135,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:135,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:136,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    - "boolean"
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].createSplitLine(org.locationtech.jts.geom.Envelope,double,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].splitExtent(org.locationtech.jts.geom.Envelope,double,boolean,boolean)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:141,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:142,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].createSplitLine(org.locationtech.jts.geom.Envelope,double,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:143,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:145,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:147,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].splitExtent(org.locationtech.jts.geom.Envelope,double,boolean,boolean)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:147,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addSplits(org.locationtech.jts.index.kdtree.KdNode,boolean,org.locationtech.jts.geom.Envelope,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:149,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].splitExtent(org.locationtech.jts.geom.Envelope,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:158,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:159,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:176,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].createSplitLine(org.locationtech.jts.geom.Envelope,double,boolean,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    - "boolean"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:182,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:183,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:184,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:185,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:187,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:188,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTree(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:192,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:193,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:195,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildKdTreeSeed(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:201,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:202,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:208,1"
      Dst: "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:210,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].strTreeBounds(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:221,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:222,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:223,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:224,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:224,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:224,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:225,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions$1:272,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractNode].getChildBoundables()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:233,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:234,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:234,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:237,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractNode].getChildBoundables()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:238,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:238,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:239,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:240,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractNode].getChildBoundables()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:233,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:234,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:234,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:237,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractNode].getChildBoundables()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:238,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:238,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:239,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:240,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].addBounds(org.locationtech.jts.index.strtree.Boundable,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].hprTreeQuery(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:247,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:248,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:251,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:251,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:252,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:252,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:91,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:128"
        BranchSideFuncs:
        - "query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
        - "<init>()"
        - "getItems()"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:124,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:126,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:127,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:129,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:130,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:131,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:225"
        BranchSideFuncs:
        - "prepareIndex()"
        - "prepareItems()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:221,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:222,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 230
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].sortItems()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerIndices(int,int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].createBoundsArray(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodes(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerNodes(int)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 31
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:232"
        BranchSideFuncs:
        - "sortItems()"
        - "computeLayerIndices(int,int)"
        - "computeLeafNodes(int)"
        - "createBoundsArray(int)"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:231,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:233,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].sortItems()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:235,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerIndices(int,int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:238,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].createBoundsArray(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:241,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodes(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:243,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerNodes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].sortItems()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 362
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HilbertEncoder].<init>(int,org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.hprtree.HilbertEncoder].encode(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 25
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:366"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:369"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getEnvelope()"
        - "encode(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:368"
        BranchSideFuncs:
        - "size()"
        - "quickSortItemsIntoNodes(int[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:363,1"
      Dst: "[org.locationtech.jts.index.hprtree.HilbertEncoder].<init>(int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:364,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:366,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:366,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:366,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:367,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:367,1"
      Dst: "[org.locationtech.jts.index.hprtree.HilbertEncoder].encode(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:369,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HilbertEncoder].<init>(int,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HilbertEncoder"
    linkageType: null
    functionLinenumber: 23
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Object].<init>()"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:24,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:26,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:29,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:31,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:32,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.Item"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HilbertEncoder].encode(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HilbertEncoder"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].encode(int,int,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:36,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:36,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.hprtree.HilbertEncoder:42,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].encode(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].encode(int,int,int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    functionUses: 1
    ICount: 134
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:119,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 374
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].hoarePartition(int[],int,int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:380"
        BranchSideFuncs:
        - "hoarePartition(int[],int,int)"
        - "quickSortItemsIntoNodes(int[],int,int)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:379"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:376,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].hoarePartition(int[],int,int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:377,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].hoarePartition(int[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 382
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].swapItems(int[],int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:387"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:391"
        BranchSideFuncs:
        - "swapItems(int[],int,int)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:390"
        BranchSideFuncs:
        - "swapItems(int[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:391,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].swapItems(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].swapItems(int[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.jdom2.ContentList$FilterList].set(int,java.lang.Object)"
    - "[org.jdom2.ContentList].set(int,java.lang.Object)"
    - "[org.jdom2.AttributeList].set(int,java.lang.Object)"
    - "[java.util.List].get(int)"
    - "[java.util.List].set(int,java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:396,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:397,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerIndices(int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 2
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>()"
    - "[org.locationtech.jts.util.IntArrayList].add(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].numNodesToCover(int,int)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:323"
        BranchSideFuncs:
        - "toArray()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:322"
        BranchSideFuncs:
        - "numNodesToCover(int,int)"
        - "add(int)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:319,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:323,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].add(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:324,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].numNodesToCover(int,int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:327,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.IntArrayList].<init>()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:30,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].add(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:70,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].numNodesToCover(int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:341"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:96,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].createBoundsArray(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 265
    functionDepth: 0
    returnType: "double[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:273"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodes(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 296
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodeBounds(int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:298,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodeBounds(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodeBounds(int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 302
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:309"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:305"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:305,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:306,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:306,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 311
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:315"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerNodes(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 277
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeNodeBounds(int,int,int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:280,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:284,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeNodeBounds(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeNodeBounds(int,int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    functionUses: 1
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:291"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:292,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.hprtree.Item].getItem()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 43
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:262"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getEnvelope()"
        - "getMaxY()"
        - "getMinY()"
        - "getItem()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:251,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:253,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:253,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:253,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:254,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:255,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:256,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:257,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:258,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:259,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.Item].getItem()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.Item"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.index.ArrayListVisitor"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.ArrayListVisitor:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.ArrayListVisitor:26,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:143"
        BranchSideFuncs:
        - "queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:142"
        BranchSideFuncs:
        - "queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:136,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:137,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:140,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:143,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SpatialPartition$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.simplify.LineSegmentVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.index.ArrayListVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.index.ItemVisitor].visitItem(java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:198"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:195"
        BranchSideFuncs:
        - "intersects(double[],int,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:194"
        BranchSideFuncs:
        - "intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:191"
        BranchSideFuncs:
        - "visitItem(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:195,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:196,1"
      Dst: "[org.locationtech.jts.index.ItemVisitor].visitItem(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionUses: 2
    ICount: 34
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:171,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:172,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:173,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:174,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:149,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:152,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:165"
        BranchSideFuncs:
        - "queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:164"
        BranchSideFuncs:
        - "queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:159,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:162,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:166,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:184"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:186,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    functionSourceFile: "org.locationtech.jts.index.ArrayListVisitor"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "java.util.ArrayList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].hprTreeQueryCached(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:261,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:262,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:267,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:267,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:268,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:268,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:91,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:128"
        BranchSideFuncs:
        - "query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
        - "<init>()"
        - "getItems()"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:124,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:126,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:127,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:129,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:130,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:131,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].hprTreeBounds(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].getBounds()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:285,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:286,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:287,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:288,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].getBounds()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:292,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:292,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:294,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:91,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:225"
        BranchSideFuncs:
        - "prepareIndex()"
        - "prepareItems()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:221,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:222,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].getBounds()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:358"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:356,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].strTreeQueryCached(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:308"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:308"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:303,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:304,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:309,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:309,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:310,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:310,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:232,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].strTreeQuery(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:315,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:316,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:319,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:319,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:320,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:320,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:232,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].strTreeNN(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:325,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:326,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:327,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:327,1"
      Dst: "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:327,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.GeometryItemDistance"
    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: "org.locationtech.jts.index.strtree.GeometryItemDistance:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:324,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:326,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:327,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:327,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:328,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.ItemBoundable:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:48,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:394"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:401"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:400"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:359,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:360,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:362,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:364,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:365,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:384,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:395,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].strTreeNNInSet(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:333,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:334,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:335,1"
      Dst: "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:335,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:337,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:337,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.GeometryItemDistance"
    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: "org.locationtech.jts.index.strtree.GeometryItemDistance:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:298,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:301,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:301,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:302,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].strTreeNNk(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance,int)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:342,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:343,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:344,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:344,1"
      Dst: "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:344,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance,int)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:345,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:345,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:346,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:346,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].loadIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.SpatialIndex)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.SpatialIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].<init>(org.locationtech.jts.index.SpatialIndex)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.GeometryItemDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.GeometryItemDistance"
    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: "org.locationtech.jts.index.strtree.GeometryItemDistance:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.Object[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:528"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:527,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:529,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:530,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:530,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:531,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.ItemBoundable:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.Boundable"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:48,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,double,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:536,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,double,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,double,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[java.util.PriorityQueue].size()"
    - "[java.util.PriorityQueue].peek()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - "[org.locationtech.jts.index.strtree.STRtree].getItems(java.util.PriorityQueue)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:551"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:551"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:564"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:600"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:583"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:582"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:584"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:591"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:590"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:544,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:547,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:551,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:553,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:554,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:574,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:577,1"
      Dst: "[java.util.PriorityQueue].size()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:583,1"
      Dst: "[java.util.PriorityQueue].peek()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:601,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:606,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].getItems(java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:128,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.PriorityQueue"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].area(org.locationtech.jts.index.strtree.Boundable)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expand(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,boolean,java.util.PriorityQueue,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:161,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isComposite(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:170,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].area(org.locationtech.jts.index.strtree.Boundable)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:171,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expand(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,boolean,java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.BoundablePair:188,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].getItems(java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].size()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:616"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:614,1"
      Dst: "[java.util.PriorityQueue].size()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:616,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:618,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:619,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:619,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.BoundablePair"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.strtree.Boundable"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.BoundablePair:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.BoundablePair:60"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 34
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].quadTreeQuery(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildQuadtree(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:352,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildQuadtree(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:355,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:355,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:356,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:356,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildQuadtree(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.index.quadtree.Quadtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].<init>(org.locationtech.jts.index.quadtree.Quadtree)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:360,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:361,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].<init>(org.locationtech.jts.index.quadtree.Quadtree)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:361,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.quadtree.Root].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:103,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Root].<init>()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Root"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Root:32,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].<init>(org.locationtech.jts.index.quadtree.Quadtree)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.quadtree.Quadtree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions$2:361,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:193,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:194,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:195,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].buildQuadtree(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.index.quadtree.Quadtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].<init>(org.locationtech.jts.index.quadtree.Quadtree)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:360,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:361,1"
      Dst: "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].<init>(org.locationtech.jts.index.quadtree.Quadtree)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:361,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialIndexFunctions].monotoneChains(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialIndexFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SpatialIndexFunctions:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SpatialIndexFunctions:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:374,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:375,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:376,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:377,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:377,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:377,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:378,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:379,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:379,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:380,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SpatialIndexFunctions:382,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:37,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainBuilder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:55"
        BranchSideFuncs:
        - "findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:57,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:199"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].<init>()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].<init>(org.locationtech.jts.io.InStream)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.InStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].setInStream(org.locationtech.jts.io.InStream)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.InStream"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].setOrder(int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].getCount()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].getData()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].readByte()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:93,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].readInt()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - "[org.locationtech.jts.io.ByteOrderValues].getInt(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:107,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:108,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].readLong()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:121,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:122,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.InStream].read(byte[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderDataInStream:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderDataInStream:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderDataInStream:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:140,1"
      Dst: "[org.locationtech.jts.io.InStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:142,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.ByteOrderValues].getLong(byte[],int)"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderValues"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 97
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderValues:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderValues:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].readDouble()"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - "[org.locationtech.jts.io.ByteOrderValues].getDouble(byte[],int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:135,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:136,1"
      Dst: "[org.locationtech.jts.io.ByteOrderValues].getDouble(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteOrderDataInStream].read(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteOrderDataInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.InStream].read(byte[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteOrderDataInStream:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteOrderDataInStream:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteOrderDataInStream:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:140,1"
      Dst: "[org.locationtech.jts.io.InStream].read(byte[])"
    - Src: "org.locationtech.jts.io.ByteOrderDataInStream:142,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:46,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:59,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:65,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:66,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.TopologyLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 18
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:70,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].init(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:80,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:91"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isAnyNull()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:101"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isEqualOnSide(org.locationtech.jts.geomgraph.TopologyLocation,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.TopologyLocation"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:108"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].isLine()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:111"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].flip()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:116"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocationsIfNull(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:130"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:142,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].getLocations()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocations(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 145
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].allPositionsEqual(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:151"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].merge(org.locationtech.jts.geomgraph.TopologyLocation)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 166
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.TopologyLocation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:173"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].toString()"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jts.geom.Location].toLocationSymbol(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:182,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:183,1"
      Dst: "[org.locationtech.jts.geom.Location].toLocationSymbol(int)"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:183,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.geomgraph.TopologyLocation:186,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Location].toLocationSymbol(int)"
    functionSourceFile: "org.locationtech.jts.geom.Location"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "char"
    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: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$7].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$7:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$7].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions$7:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions$7:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$7:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.AttributeType].values()"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.AttributeType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeType:65,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.AttributeType"
    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: "org.jdom2.AttributeType:65,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].<init>(java.lang.String,int)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeType:65,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].byIndex(int)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    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()"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - "[org.jdom2.AttributeType].values()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:161"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:164"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:163"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:164"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:168"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeType:164,1"
      Dst: "[org.jdom2.AttributeType].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:184"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:189"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:188"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:189,1"
      Dst: "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.Area].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    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: "org.locationtech.jts.algorithm.Area:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:33,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Area:33,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Area:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Area:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Area:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:71"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 38
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Area:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Area:95"
        BranchSideFuncs:
        - "createCoordinate()"
    - Branch String: "org.locationtech.jts.algorithm.Area:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Area:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Area:96,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - Src: "org.locationtech.jts.algorithm.Area:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$1].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$1:148,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$1].toJSONString()"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$1"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaderXSDFactory$1].<init>()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderXSDFactory$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: "org.jdom2.input.sax.XMLReaderXSDFactory$1:89,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaderXSDFactory$1].getSchemaFactory()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderXSDFactory$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.xml.validation.SchemaFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.validation.SchemaFactory].newInstance(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaderXSDFactory$1:92,1"
      Dst: "[javax.xml.validation.SchemaFactory].newInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:91,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:69,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:75,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].size()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.Item].<init>(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:116"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Envelope,java.lang.Object)"
        - "add(java.lang.Object)"
        - "expandToInclude(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:115,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:118,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].<init>(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:119,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.Item].<init>(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.Item"
    linkageType: null
    functionLinenumber: 20
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.Item:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:128"
        BranchSideFuncs:
        - "query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
        - "<init>()"
        - "getItems()"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:124,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:126,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:127,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:129,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:130,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:131,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:143"
        BranchSideFuncs:
        - "queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:142"
        BranchSideFuncs:
        - "queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:136,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:137,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:140,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:143,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryTopLayer(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:149,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:152,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:165"
        BranchSideFuncs:
        - "queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:164"
        BranchSideFuncs:
        - "queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:159,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:162,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:166,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionUses: 2
    ICount: 34
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:173"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:171,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:172,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:173,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:174,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryNodeChildren(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:184"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:186,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].queryNode(int,int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].queryItems(int,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SpatialPartition$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.simplify.LineSegmentVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.index.ArrayListVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.index.ItemVisitor].visitItem(java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:198"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:195"
        BranchSideFuncs:
        - "intersects(double[],int,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:194"
        BranchSideFuncs:
        - "intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:191"
        BranchSideFuncs:
        - "visitItem(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:195,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].intersects(double[],int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:196,1"
      Dst: "[org.locationtech.jts.index.ItemVisitor].visitItem(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 201
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].build()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:225"
        BranchSideFuncs:
        - "prepareIndex()"
        - "prepareItems()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:221,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:222,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].prepareIndex()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 230
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].sortItems()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerIndices(int,int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].createBoundsArray(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodes(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerNodes(int)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 31
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:232"
        BranchSideFuncs:
        - "sortItems()"
        - "computeLayerIndices(int,int)"
        - "computeLeafNodes(int)"
        - "createBoundsArray(int)"
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:231,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:233,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].sortItems()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:235,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerIndices(int,int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:238,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].createBoundsArray(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:241,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodes(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:243,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerNodes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].prepareItems()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.hprtree.Item].getItem()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 43
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:262"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getEnvelope()"
        - "getMaxY()"
        - "getMinY()"
        - "getItem()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:251,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:253,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:253,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:253,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:254,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:255,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:256,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:257,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:258,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:259,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].createBoundsArray(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 265
    functionDepth: 0
    returnType: "double[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:273"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerNodes(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 277
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeNodeBounds(int,int,int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:280,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].layerSize(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:284,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeNodeBounds(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeNodeBounds(int,int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    functionUses: 1
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:291"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:292,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodes(int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 296
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodeBounds(int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:298,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodeBounds(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLeafNodeBounds(int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 302
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:309"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:305"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:305,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:306,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:306,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:307,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].updateNodeBounds(int,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 311
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:315"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].computeLayerIndices(int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 2
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>()"
    - "[org.locationtech.jts.util.IntArrayList].add(int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].numNodesToCover(int,int)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:323"
        BranchSideFuncs:
        - "toArray()"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:322"
        BranchSideFuncs:
        - "numNodesToCover(int,int)"
        - "add(int)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:319,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:323,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].add(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:324,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].numNodesToCover(int,int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:327,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].numNodesToCover(int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 338
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:341"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].getBounds()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:358"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:356,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].sortItems()"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 362
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HilbertEncoder].<init>(int,org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.hprtree.HilbertEncoder].encode(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 25
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:366"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:369"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getEnvelope()"
        - "encode(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:368"
        BranchSideFuncs:
        - "size()"
        - "quickSortItemsIntoNodes(int[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:363,1"
      Dst: "[org.locationtech.jts.index.hprtree.HilbertEncoder].<init>(int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:364,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:366,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:366,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:366,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:367,1"
      Dst: "[org.locationtech.jts.index.hprtree.Item].getEnvelope()"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:367,1"
      Dst: "[org.locationtech.jts.index.hprtree.HilbertEncoder].encode(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:369,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 374
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].hoarePartition(int[],int,int)"
    - "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:380"
        BranchSideFuncs:
        - "hoarePartition(int[],int,int)"
        - "quickSortItemsIntoNodes(int[],int,int)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:379"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:376,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].hoarePartition(int[],int,int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:377,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].quickSortItemsIntoNodes(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].hoarePartition(int[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 382
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].swapItems(int[],int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:387"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.hprtree.HPRtree:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:391"
        BranchSideFuncs:
        - "swapItems(int[],int,int)"
      - BranchSide: "org.locationtech.jts.index.hprtree.HPRtree:390"
        BranchSideFuncs:
        - "swapItems(int[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:391,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].swapItems(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.hprtree.HPRtree].swapItems(int[],int,int)"
    functionSourceFile: "org.locationtech.jts.index.hprtree.HPRtree"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.jdom2.ContentList$FilterList].set(int,java.lang.Object)"
    - "[org.jdom2.ContentList].set(int,java.lang.Object)"
    - "[org.jdom2.AttributeList].set(int,java.lang.Object)"
    - "[java.util.List].get(int)"
    - "[java.util.List].set(int,java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:396,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.hprtree.HPRtree:397,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 4
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:47,1"
      Dst: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:67"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getCoordinate()"
    - Branch String: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:63,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:68,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFullyEnabled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:38,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:38,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:39,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isFullyEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].add(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style,org.locationtech.jtstest.testbuilder.ui.style.StyleList$StyleFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:52,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].isEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].isEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntry(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.StyleEntry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:71,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].getEntryIndex(org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:76,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:77,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleList:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleEntry].getStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].findEdgeRingContaining(org.locationtech.jts.operation.polygonize.EdgeRing,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].contains(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:63,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:63,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:64,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].contains(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:66,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:66,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].contains(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isPointInOrOut(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:263,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:265,1"
      Dst: "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isPointInOrOut(org.locationtech.jts.operation.polygonize.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:336,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:336,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:294,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:296,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:299,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:343,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 708
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:709"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:711"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:710"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:709,1"
      Dst: "[org.locationtech.jts.geom.Envelope].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.Envelope:711,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isPointInOrOut(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:272,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:273,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getLocator()"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:249,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLocator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:249,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLocator()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:240,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:240,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].findDirEdgesInRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:87,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:88,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:89,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:90,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:72"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:114,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:97,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].build(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].add(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setRing(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:121,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].add(org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:122,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setRing(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:124,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:125,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].add(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:135,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setRing(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:72"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].add(org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:135,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:158,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:159,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:159,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].addHole(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:168,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:169,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].addHole(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:177,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:178,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:180,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:181,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].setShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getPolygon()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:193,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:195,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:198,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeValid()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:216,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:221,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:222,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:294,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:296,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:299,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLocator()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.algorithm.locate.PointOnGeometryLocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:240,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:240,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getLocator()"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:249,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLocator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:249,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].contains(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isPointInOrOut(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:263,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:265,1"
      Dst: "[org.locationtech.jts.geom.Envelope].containsProperly(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isPointInOrOut(org.locationtech.jts.operation.polygonize.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isPointInOrOut(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:277"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:276"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:272,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:273,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:294,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:296,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:299,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLineString()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:313,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:314,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:294,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:296,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:299,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:336,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:336,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:343,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].setShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].hasShell()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:367"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getShell()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:378"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:377"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:377,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].hasShell()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:387"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:388,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].hasShell()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].hasShell()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:367"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterShell()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:397,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:418"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:423"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:418"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:414,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:419,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:420,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:421,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:421,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:422,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].hasShell()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:388"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:387"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:388,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].hasShell()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:418"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:423"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:418"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:414,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:419,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:420,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:421,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:421,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:422,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].updateIncluded()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getShell()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:439"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:432,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:433,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:434,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:435,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:435,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:435,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getShell()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:437,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:439,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:439,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getShell()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:378"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:377"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:377,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].toString()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:451,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:451,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:451,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:294,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:295,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:296,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:297,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].addEdge(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:299,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:44,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:44,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:66"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:61,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:61,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:86"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    - Src: "org.locationtech.jts.io.WKTWriter:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16:214,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeInfo()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeInfo()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeInfo()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:270,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:270,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:28"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.match.SimilarityMeasureCombiner].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.match.SimilarityMeasureCombiner"
    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: "org.locationtech.jts.algorithm.match.SimilarityMeasureCombiner:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.match.SimilarityMeasureCombiner].combine(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.match.SimilarityMeasureCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.match.SimilarityMeasureCombiner:25,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1:60,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLHandler$Handler].<init>(org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy,org.xml.sax.Attributes)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy"
    - "org.xml.sax.Attributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.xml.sax.helpers.AttributesImpl].<init>(org.xml.sax.Attributes)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLHandler$Handler:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:71,1"
      Dst: "[org.xml.sax.helpers.AttributesImpl].<init>(org.xml.sax.Attributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLHandler$Handler].addText(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLHandler$Handler:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:83,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:84,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLHandler$Handler].keep(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLHandler$Handler:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLHandler$Handler:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:96,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:97,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.gml2.GMLHandler$Handler].create(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLHandler$Handler:107,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies$ParseStrategy].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$10].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$10:140,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$10].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions$10:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions$10:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$10:142,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:301,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$11].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$900(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].getColor(javax.swing.JPanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:304,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$900(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:304,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].getColor(javax.swing.JPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:305,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:305,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:307,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$11:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$900(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JPanel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].getColor(javax.swing.JPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "javax.swing.JPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].getBackground()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:62,1"
      Dst: "[java.awt.Component].getBackground()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].updateStyleControls()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    - "[javax.swing.JSlider].setValue(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[javax.swing.SpinnerNumberModel].setValue(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[java.lang.Double].valueOf(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 121
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:113,1"
      Dst: "[javax.swing.JSlider].setValue(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isShifted()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:115,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertices()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isVertexLabels()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSymbol()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setVertexSymbol(javax.swing.JComboBox,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:119,1"
      Dst: "[javax.swing.SpinnerNumberModel].setValue(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isLabel()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getLabelSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isEndpoints()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isDashed()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOffset()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getOffsetSize()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isOrientations()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isStructure()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].isSegIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:131,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setPaletteType(javax.swing.JComboBox,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:124,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder].node(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder].nodeSnapDedup(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:133,1"
      Dst: "[org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder].nodeSnapDedup(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder].nodeSnapDedup(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.NodingFunctions].snappingNoder(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jtstest.function.DissolveFunctions].dissolve(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.NodingFunctions].findInteriorNodes(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:145,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].snappingNoder(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:146,1"
      Dst: "[org.locationtech.jtstest.function.DissolveFunctions].dissolve(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:147,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].findInteriorNodes(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:150,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].snappingNoder(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:145,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:146,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:147,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:148,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:149,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:149,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.NodingFunctions:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:158,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:60,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:61,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:61,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:62,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:63,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:64,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:69,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:64,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:99,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DissolveFunctions].dissolve(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DissolveFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DissolveFunctions:23,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].findInteriorNodes(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionsFinder(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:82,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:83,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionsFinder(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:84,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:85,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:86,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:87,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionsFinder(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.noding.NodingIntersectionFinder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:79,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:80,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:81,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:124,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.noding.NodingIntersectionFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:107,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:56,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:79,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:80,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:82,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:73,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:73,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder].nodeSnapDedup(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.NodingFunctions].snappingNoder(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jtstest.function.DissolveFunctions].dissolve(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.NodingFunctions].findInteriorNodes(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:145,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].snappingNoder(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:146,1"
      Dst: "[org.locationtech.jtstest.function.DissolveFunctions].dissolve(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:147,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].findInteriorNodes(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonOverlayFunctions$IteratedSnappingNoder:150,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$21].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:430,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$21].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFilled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:432,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:432,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:432,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:432,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFilled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:433,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:433,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$21:434,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFilled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Position].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Position"
    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: "org.locationtech.jts.geom.Position:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Position].opposite(int)"
    functionSourceFile: "org.locationtech.jts.geom.Position"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Position:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Position:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Position:37"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Position:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Position:39"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Position:38"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double,org.locationtech.jts.geom.Coordinate[],double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 436
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:437,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:440,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].getBufferMinIndex()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 447
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].segmentMatchFrac(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 1
    ICount: 32
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:470"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:472"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:467,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].segmentMatchFrac(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].segmentMatchFrac(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 483
    functionDepth: 4
    returnType: "double"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].isMatch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:488"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:487"
        BranchSideFuncs:
        - "segmentFraction(org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:484,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].isMatch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:488,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:489,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].isMatch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 492
    functionDepth: 2
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 32
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:494"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:507"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:506"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:504"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:503"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:507"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:506"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:493,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:495,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:420"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:422"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:423"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:418,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:421,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].segmentMatchFrac(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 483
    functionDepth: 4
    returnType: "double"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].isMatch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:488"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:487"
        BranchSideFuncs:
        - "segmentFraction(org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:484,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].isMatch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:488,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:489,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].segmentFraction(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].isMatch(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 492
    functionDepth: 2
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 32
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:494"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:507"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:506"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:504"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:503"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:507"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:506"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:493,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:495,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$2:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$2].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$100(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$2:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$100(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$100(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerInspect()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerInspect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerInspect()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:239,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:239,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:239,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:239,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:343,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:344,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:199,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:200,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:201,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:202,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter"
    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: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].getDimension()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 4
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:95"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:100"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:96,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>(org.locationtech.jts.algorithm.InteriorPoint$1)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.InteriorPoint$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter:85,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedDocType:86,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedDocType:104,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedDocType:117,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].getLine()"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].getColumn()"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedDocType].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedDocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    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: "org.locationtech.jtstest.function.SelectionFunctions:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].intersectsPrep(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions$1].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:29,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$1].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:29,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$1].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedGeometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$1:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].intersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$2].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$2].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$2].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$2:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].covers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$3].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:47,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$3].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:47,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$3].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$3:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].coversPrep(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions$4].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:56,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:57,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$4].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:57,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$4].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedGeometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$4:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].coveredBy(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$5].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:66,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$5].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:66,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$5].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$5:66,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].disjoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].disjoint(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:75,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:76,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:77,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Geometry].disjoint(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:79,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].valid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:86,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:89,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:90,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].invalid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:97,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:98,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:99,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:100,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:101,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:104,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:104,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].lengthGreaterThan(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$6].<init>(double)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:108,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$6].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:108,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$6].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$6:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].lengthLessThan(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$7].<init>(double)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:116,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$7].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:116,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$7].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$7:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].lengthZero(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$8].<init>()"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:124,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$8].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:124,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$8].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$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: "org.locationtech.jtstest.function.SelectionFunctions$8:124,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].areaGreaterThan(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$9].<init>(double)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:132,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$9].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:132,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$9].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$9:132,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].areaLessThan(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$10].<init>(double)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:140,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$10].<init>(double)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:140,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$10].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$10:140,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].areaZero(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$11].<init>()"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:148,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$11].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:148,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$11].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$11"
    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: "org.locationtech.jtstest.function.SelectionFunctions$11:148,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].within(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$12].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:156,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$12].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:156,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$12].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$12:156,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].interiorPointWithin(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$13].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:165,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$13].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:165,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$13].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$13:165,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].withinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SelectionFunctions$14].<init>(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:174,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$14].<init>(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:174,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$14].<init>(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$14:174,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].withinDistanceIndexed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SelectionFunctions$15].<init>(org.locationtech.jts.operation.distance.IndexedFacetDistance,double)"
    - "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:183,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:184,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions$15].<init>(org.locationtech.jts.operation.distance.IndexedFacetDistance,double)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:184,1"
      Dst: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:115,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$15].<init>(org.locationtech.jts.operation.distance.IndexedFacetDistance,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$15:184,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].select(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.function.GeometryPredicate)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.function.GeometryPredicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:194,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:197,1"
      Dst: "[org.locationtech.jtstest.function.GeometryPredicate].isTrue(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions].firstNComponents(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:207,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:208,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:209,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:209,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:211,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions:211,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.LabellingFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.LabellingFunctions"
    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: "org.locationtech.jtstest.function.LabellingFunctions:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.LabellingFunctions].labelPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LabellingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LabellingFunctions:23,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.function.LabellingFunctions:24,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LabellingFunctions:24,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:43,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findScanY(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scan(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>(org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$1)"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findBestMidpoint()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findScanY(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scan(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>(org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$1)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:59,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findBestMidpoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findScanY(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[java.lang.Math].max(double,double)"
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:84,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:87,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:88,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scan(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scanRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:65,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scanRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:66,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:67,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scanRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scanSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:72,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:73,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:74,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scanSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scanSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].crosses(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].crosses(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:97,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:106,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:106,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].crosses(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:160,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:164,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>(org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$1)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator"
    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: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator:175,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findBestMidpoint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[java.lang.Math].max(double,double)"
    - "[java.lang.Math].min(double,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.Double].doubleValue()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:110,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:111,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:112,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:114,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:115,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:126,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:126,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:146,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.LabellingFunctions].labelPointConstrained(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LabellingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LabellingFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.LabellingFunctions:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.LabellingFunctions:30,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LabellingFunctions:30,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:43,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findScanY(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scan(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>(org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$1)"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findBestMidpoint()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findScanY(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].scan(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$DoubleComparator].<init>(org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint$1)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:59,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].findBestMidpoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$5].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$5:247,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$5].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$5:249,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$4].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$4:170,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$4].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - "[java.util.List].get(int)"
    - "[java.util.List].subList(int,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$4:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$4:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$4:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$4:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$4:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$4:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$4:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$4:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$4:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$4:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$4:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:176,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:177,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:179,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:179,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:181,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:182,1"
      Dst: "[java.util.List].subList(int,int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:183,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:185,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:187,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$4:188,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.xml.sax.Attributes"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:497,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:498,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:499,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:500,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:503,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:504,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:506,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:508,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONValue].<init>()"
    functionSourceFile: "org.json.simple.JSONValue"
    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: "org.json.simple.JSONValue:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONValue].parse(java.io.Reader)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].<init>()"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONValue:41,1"
      Dst: "[org.json.simple.parser.JSONParser].<init>()"
    - Src: "org.json.simple.JSONValue:42,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.json.simple.parser.JSONParser].<init>()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.parser.JSONParser:34,1"
      Dst: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:92,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONValue].parse(java.lang.String)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.json.simple.JSONValue].parse(java.io.Reader)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONValue:50,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.json.simple.JSONValue:51,1"
      Dst: "[org.json.simple.JSONValue].parse(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONValue].parse(java.io.Reader)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].<init>()"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONValue:41,1"
      Dst: "[org.json.simple.parser.JSONParser].<init>()"
    - Src: "org.json.simple.JSONValue:42,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.json.simple.JSONValue].parseWithException(java.io.Reader)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].<init>()"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONValue:72,1"
      Dst: "[org.json.simple.parser.JSONParser].<init>()"
    - Src: "org.json.simple.JSONValue:73,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].<init>()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.parser.JSONParser:34,1"
      Dst: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:92,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONValue].parseWithException(java.lang.String)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].<init>()"
    - "[org.json.simple.parser.JSONParser].parse(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.JSONValue:77,1"
      Dst: "[org.json.simple.parser.JSONParser].<init>()"
    - Src: "org.json.simple.JSONValue:78,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].<init>()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.parser.JSONParser:34,1"
      Dst: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.lang.String)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContainerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:75,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContainerFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:79,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.json.simple.parser.JSONParser:81,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:87,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - "[java.util.LinkedList].<init>()"
    - "[org.json.simple.parser.JSONParser].nextToken()"
    - "[java.lang.Integer].<init>(int)"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    - "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    - "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    - "[java.util.LinkedList].removeFirst()"
    - "[org.json.simple.parser.JSONParser].getPosition()"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[java.util.LinkedList].size()"
    - "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - "[java.util.LinkedList].getFirst()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 201
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:143"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:146"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:145"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:153"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:164"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:170"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:169"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:224"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:230"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:229"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:256"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:259"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:258"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:259"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:118"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:112,1"
      Dst: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:113,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.json.simple.parser.JSONParser:118,1"
      Dst: "[org.json.simple.parser.JSONParser].nextToken()"
    - Src: "org.json.simple.parser.JSONParser:124,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.json.simple.parser.JSONParser:124,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:130,1"
      Dst: "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:135,1"
      Dst: "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:144,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.json.simple.parser.JSONParser:146,1"
      Dst: "[org.json.simple.parser.JSONParser].getPosition()"
    - Src: "org.json.simple.parser.JSONParser:146,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:164,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:167,1"
      Dst: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - Src: "org.json.simple.parser.JSONParser:186,1"
      Dst: "[java.util.LinkedList].getFirst()"
    - Src: "org.json.simple.parser.JSONParser:187,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:221,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 23
    BBCount: 43
  - functionName: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    functionSourceFile: "org.json.simple.parser.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.ParseException:28,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.JSONValue].writeJSONString(java.lang.Object,java.io.Writer)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.io.Writer].write(int)"
    - "[org.json.simple.JSONValue].escape(java.lang.String)"
    - "[java.lang.Double].isInfinite()"
    - "[java.lang.Double].isNaN()"
    - "[java.lang.Object].toString()"
    - "[java.lang.Float].isInfinite()"
    - "[java.lang.Float].isNaN()"
    - "[org.json.simple.JSONStreamAware].writeJSONString(java.io.Writer)"
    - "[org.json.simple.JSONAware].toJSONString()"
    - "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:96"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:101"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:100"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:101"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:108"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:107"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:108"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:116"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:115"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:109"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:110"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:109"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:109"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:112"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:111"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:116"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:124"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:123"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:117"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:118"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:117"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:117"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:120"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:119"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:124"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:129"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:128"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:129"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:134"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:133"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:134"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:139"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:138"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:139"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:144"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:143"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:144"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:149"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:148"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:149"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:154"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:97,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.json.simple.JSONValue:102,1"
      Dst: "[java.io.Writer].write(int)"
    - Src: "org.json.simple.JSONValue:103,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String)"
    - Src: "org.json.simple.JSONValue:109,1"
      Dst: "[java.lang.Double].isInfinite()"
    - Src: "org.json.simple.JSONValue:109,1"
      Dst: "[java.lang.Double].isNaN()"
    - Src: "org.json.simple.JSONValue:112,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.json.simple.JSONValue:117,1"
      Dst: "[java.lang.Float].isInfinite()"
    - Src: "org.json.simple.JSONValue:117,1"
      Dst: "[java.lang.Float].isNaN()"
    - Src: "org.json.simple.JSONValue:135,1"
      Dst: "[org.json.simple.JSONStreamAware].writeJSONString(java.io.Writer)"
    - Src: "org.json.simple.JSONValue:140,1"
      Dst: "[org.json.simple.JSONAware].toJSONString()"
    - Src: "org.json.simple.JSONValue:145,1"
      Dst: "[org.json.simple.JSONObject].writeJSONString(java.util.Map,java.io.Writer)"
    - Src: "org.json.simple.JSONValue:150,1"
      Dst: "[org.json.simple.JSONArray].writeJSONString(java.util.List,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 29
  - functionName: "[org.json.simple.JSONValue].toJSONString(java.lang.Object)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.json.simple.JSONValue].escape(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.Double].isInfinite()"
    - "[java.lang.Double].isNaN()"
    - "[java.lang.Object].toString()"
    - "[java.lang.Float].isInfinite()"
    - "[java.lang.Float].isNaN()"
    - "[org.json.simple.JSONAware].toJSONString()"
    - "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    - "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:172"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:175"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:174"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:175"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:178"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:177"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:178"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:185"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:184"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:179"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:180"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:179"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:179"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:182"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:181"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:185"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:192"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:191"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:186"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:187"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:186"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:186"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:189"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:188"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:192"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:195"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:194"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:195"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:198"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:197"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:198"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:201"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:200"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:201"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:204"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:203"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:204"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:207"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String)"
    - Src: "org.json.simple.JSONValue:176,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.json.simple.JSONValue:179,1"
      Dst: "[java.lang.Double].isInfinite()"
    - Src: "org.json.simple.JSONValue:179,1"
      Dst: "[java.lang.Double].isNaN()"
    - Src: "org.json.simple.JSONValue:182,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.json.simple.JSONValue:186,1"
      Dst: "[java.lang.Float].isInfinite()"
    - Src: "org.json.simple.JSONValue:186,1"
      Dst: "[java.lang.Float].isNaN()"
    - Src: "org.json.simple.JSONValue:199,1"
      Dst: "[org.json.simple.JSONAware].toJSONString()"
    - Src: "org.json.simple.JSONValue:202,1"
      Dst: "[org.json.simple.JSONObject].toJSONString(java.util.Map)"
    - Src: "org.json.simple.JSONValue:205,1"
      Dst: "[org.json.simple.JSONArray].toJSONString(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 25
  - functionName: "[org.json.simple.JSONValue].escape(java.lang.String)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:216"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:218"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:218,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.JSONValue:219,1"
      Dst: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    - Src: "org.json.simple.JSONValue:220,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.JSONValue].escape(java.lang.String,java.lang.StringBuffer)"
    functionSourceFile: "org.json.simple.JSONValue"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.StringBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.String].toUpperCase()"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.JSONValue:228"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:270"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:269"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:266"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:265"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:257"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:266"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.JSONValue:265"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.JSONValue:260"
      Branch Sides:
      - BranchSide: "org.json.simple.JSONValue:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.JSONValue:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.JSONValue:229,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.json.simple.JSONValue:232,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.JSONValue:258,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "org.json.simple.JSONValue:261,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.json.simple.JSONValue:263,1"
      Dst: "[java.lang.String].toUpperCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 17
    BBCount: 24
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:142,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation].isEdited()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation].edit(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation].hasVertexInBox(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeNull(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation].hasVertexInBox(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:162,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:166,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeNull(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:171,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:173,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 18
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation].hasVertexInBox(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:193"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:190,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeNull(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:462"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:467"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:466"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:462"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:361"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:360,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation].hasVertexInBox(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:193"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryBoxDeleter$BoxDeleteVertexOperation:190,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.Segment].<init>(double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:35,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.triangulate.Segment:35,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].<init>(double,double,double,double,double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:42,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.triangulate.Segment:42,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.Segment:53,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.Segment:64,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStart()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:73,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEnd()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:82,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStartX()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:91,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStartY()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:101,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStartZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:111,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.Segment:112,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEndX()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:121,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEndY()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:131,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEndZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:141,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.Segment:142,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getData()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].setData(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].equalsTopo(org.locationtech.jts.triangulate.Segment)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - "[org.locationtech.jts.geom.LineSegment].equalsTopo(org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:180,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - Src: "org.locationtech.jts.triangulate.Segment:180,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].equalsTopo(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].equalsTopo(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:727"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:726"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:725"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:724"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:727"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:724"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:727"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:724"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:726,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].intersection(org.locationtech.jts.triangulate.Segment)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:190,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    - Src: "org.locationtech.jts.triangulate.Segment:190,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getLineSegment()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 613
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:616"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:618"
        BranchSideFuncs:
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:617"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:614,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:615,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:616,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.geom.LineSegment:617,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].toString()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:199,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].toString()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    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: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:27,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:37,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jts.io.ParseException:37,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    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: "org.locationtech.jts.io.ParseException:48,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].<init>()"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:31,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.simplify.TaggedLineString)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getSegments()"
    - "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LineSegmentIndex:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LineSegmentIndex:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:38,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getSegments()"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:41,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getSegments()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.simplify.TaggedLineSegment[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:47,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:47,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:142,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:143,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:144,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:47,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:47,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].remove(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:52,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:52,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:156,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:157,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].query(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.LineSegmentVisitor].<init>(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.simplify.LineSegmentVisitor].getItems()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:57,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:59,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentVisitor].<init>(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:60,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:61,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentVisitor].<init>(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentVisitor:83,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.LineSegmentVisitor:81,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].visit(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:217,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].visit(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentVisitor].getItems()"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.ArrayList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].<init>()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].isGeometryInput(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:123"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator"
    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: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:287,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].compare(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].access$000(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:295"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:298,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].compare(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:299,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].access$000(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].compare(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:207,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].access$000(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isEqualReversed(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:26,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isEqualReversed(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isEqualReversed(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:273,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator].OLDcompare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:314,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays$BidirectionalComparator:321,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 18
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:258"
        BranchSideFuncs:
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:253,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseMotionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$1:218,1"
      Dst: "[java.awt.event.MouseMotionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].mouseMoved(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_mouseMoved(java.awt.event.MouseEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$1:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_mouseMoved(java.awt.event.MouseEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_mouseMoved(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:155,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:156,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScaleFormat()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.text.NumberFormat].format(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:566,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:566,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:567,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScaleFormat()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.text.NumberFormat].format(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:570,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:570,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:189,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:190,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:194,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:199,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.AffineTransform"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.AffineTransform].<init>()"
    - "[java.awt.geom.AffineTransform].translate(double,double)"
    - "[java.awt.geom.AffineTransform].scale(double,double)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:269,1"
      Dst: "[java.awt.geom.AffineTransform].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:270,1"
      Dst: "[java.awt.geom.AffineTransform].translate(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:271,1"
      Dst: "[java.awt.geom.AffineTransform].scale(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:273,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:273,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScaleFormat()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.text.NumberFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].mouseDragged(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_mouseMoved(java.awt.event.MouseEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$1:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_mouseMoved(java.awt.event.MouseEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_mouseMoved(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:155,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:156,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$7].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    - "javax.swing.JCheckBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$7:300,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$7].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGrid(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$7:302,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$7:302,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$7:302,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGrid(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGrid(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:187,1"
      Dst: "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:190,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPolygonRing(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].findPolygonContaining(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addHole(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].replace(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:40,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].findPolygonContaining(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addHole(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].replace(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].clone()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:99,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:106,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:111,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:115,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:119,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].findPolygonContaining(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:74,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:76,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:77,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 7
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:93"
        BranchSideFuncs:
        - "locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:97"
        BranchSideFuncs:
        - "locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:96"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:91,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:99,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:100,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addHole(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:86,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:89,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:92,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:92,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].replace(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.Collections].replaceAll(java.util.List,java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:127,1"
      Dst: "[java.util.Collections].replaceAll(java.util.List,java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:128,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addLineString(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:62,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].clone()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:99,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:106,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:68,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].clone()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:99,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:106,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].findPolygonContaining(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:74,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:76,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:77,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addHole(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:86,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:89,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:92,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:92,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].clone()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:99,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:101,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:106,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:111,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:115,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:119,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].replace(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.util.Collections].replaceAll(java.util.List,java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].extractElements(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:127,1"
      Dst: "[java.util.Collections].replaceAll(java.util.List,java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:128,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].<init>(org.locationtech.jtstest.cmd.CommandOutput)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.cmd.CommandOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].printGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].toString()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeWKB(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeoJSON(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeSVG(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:44,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:49,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeWKB(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:52,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:52,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:55,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeoJSON(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeSVG(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:62,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeWKB(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].isCustomSRID(int)"
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,boolean)"
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:67,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].isCustomSRID(int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:68,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,boolean)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:71,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:73,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:73,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].isCustomSRID(int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:580"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>(int,boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:256,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>(int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[org.locationtech.jts.io.OutputStreamOutStream].<init>(java.io.OutputStream)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBWriter:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBWriter:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:285,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:217,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:218,1"
      Dst: "[org.locationtech.jts.io.OutputStreamOutStream].<init>(java.io.OutputStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:291,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:227,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].reset()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - "[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)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:303,1"
      Dst: "[java.io.ByteArrayOutputStream].reset()"
    - Src: "org.locationtech.jts.io.WKBWriter:304,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.OutStream)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKBWriter:307,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBWriter:309,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionSourceFile: "org.locationtech.jts.io.WKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBWriter:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBWriter:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBWriter:196,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHexDigit(int)"
    - Src: "org.locationtech.jts.io.WKBWriter:199,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.io.WKBWriter:202,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    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: "org.locationtech.jts.io.gml2.GMLWriter:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:183,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:185,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:188,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.gml2.GMLWriter:190,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeoJSON(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].setEncodeCRS(boolean)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:77,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:78,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].setEncodeCRS(boolean)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:79,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:68,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>(int)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:78,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].setEncodeCRS(boolean)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:110,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:112,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:114,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter:117,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeSVG(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.CommandOutput:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:42,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeWKB(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].isCustomSRID(int)"
    - "[org.locationtech.jts.io.WKBWriter].<init>(int,boolean)"
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:67,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].isCustomSRID(int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:68,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>(int,boolean)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:71,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:73,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:73,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeoJSON(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].setEncodeCRS(boolean)"
    - "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:77,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:78,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].setEncodeCRS(boolean)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:79,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.GeometryOutput].getNumPoints(java.util.List)"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].getTypesSummary(java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,int,java.lang.String,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:93,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].getNumPoints(java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:94,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].getTypesSummary(java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:95,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:95,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,int,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].getNumPoints(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:106,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:106,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:106,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].getTypesSummary(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].addName(java.lang.String,int,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:122,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:122,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:131,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:132,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].addName(java.lang.String,int,java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:139,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].addName(java.lang.String,int,java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:144,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,int,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:101,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:101,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,int,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:101,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:101,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].getNumPoints(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:106,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:106,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:106,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].getTypesSummary(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].addName(java.lang.String,int,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:122,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:122,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:131,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:132,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].addName(java.lang.String,int,java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:139,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].addName(java.lang.String,int,java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:144,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    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.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "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: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:115,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].<init>(double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:39,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:53,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getX()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getY()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:92"
        BranchSideFuncs:
        - "getX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:91"
        BranchSideFuncs:
        - "getY()"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:92,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getLeft()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getRight()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 126
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getCount()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:149"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].setLeft(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].setRight(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverLeft(boolean,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:176"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:175"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:177"
        BranchSideFuncs:
        - "splitValue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:174,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:176,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:178,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isRangeOverRight(boolean,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:196"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:195"
        BranchSideFuncs:
        - "getMaxY()"
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:197"
        BranchSideFuncs:
        - "splitValue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:194,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:196,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.kdtree.KdNode:198,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isPointOnLeft(boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:224"
        BranchSideFuncs:
        - "splitValue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdNode:225,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].splitValue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.FunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunction()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunctionParams()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunctionParams()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:83,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - "[java.lang.System].gc()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:91,1"
      Dst: "[java.lang.System].gc()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resetUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:311,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Window].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:220,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:220,1"
      Dst: "[java.awt.Window].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.Object"
    - "org.locationtech.jts.util.Stopwatch"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:111,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:123,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:124,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Timer].stop()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController$2].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - "[javax.swing.Timer].setInitialDelay(int)"
    - "[javax.swing.Timer].start()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:189,1"
      Dst: "[javax.swing.Timer].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController$2].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:191,1"
      Dst: "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:205,1"
      Dst: "[javax.swing.Timer].setInitialDelay(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:206,1"
      Dst: "[javax.swing.Timer].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].stopFunctionMonitor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Timer].stop()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:211,1"
      Dst: "[javax.swing.Timer].stop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].executeScalarFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getScalarFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getOpName()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultValuePanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setResult(java.lang.String,java.lang.String,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultValueTab()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getResult()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getTimer()"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getScalarFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultValuePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setResult(java.lang.String,java.lang.String,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultValueTab()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getTimer()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:231,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getScalarFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getOpName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:220,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultValuePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setResult(java.lang.String,java.lang.String,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setString(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setError(java.lang.Throwable)"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultValuePanel:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultValuePanel:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultValuePanel:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:81,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setString(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setError(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultValuePanel:91,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultValueTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Window].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:216,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:216,1"
      Dst: "[java.awt.Window].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryA()"
    - "[org.locationtech.jts.util.Stopwatch].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getFunctionParams()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - "[org.locationtech.jts.util.Stopwatch].stop()"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryA()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:156,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getFunctionParams()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:157,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:158,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:161,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryA()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Stopwatch].<init>()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.util.Stopwatch].start()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.Stopwatch:28,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].start()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Stopwatch:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Stopwatch:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Stopwatch:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:34,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getFunctionParams()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getParamValue(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:195,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getParamValue(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getParamValue(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:206,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].attributeParamOffset(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:439"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:440,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.swing.text.JTextComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:174,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].valOrDefault(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:477,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.util.Stopwatch].stop()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Stopwatch:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Stopwatch:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Stopwatch:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:41,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:62,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Window].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:220,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:220,1"
      Dst: "[java.awt.Window].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getTimer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.util.Stopwatch"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].getTime()"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:76,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTime()"
    - Src: "org.locationtech.jts.util.Stopwatch:77,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.FunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunction()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunctionParams()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.FunctionPanel].getFunctionParams()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:83,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:123,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:124,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$000()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$100(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].stopFunctionMonitor()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].stopFunctionMonitor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].stopFunctionMonitor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Timer].stop()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:211,1"
      Dst: "[javax.swing.Timer].stop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$200(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resetUI()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resetUI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resetUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$300(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.Object"
    - "org.locationtech.jts.util.Stopwatch"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.Object"
    - "org.locationtech.jts.util.Stopwatch"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:111,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$402(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.testbuilder.ui.SwingWorker)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.SwingWorker"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    - "org.locationtech.jtstest.testbuilder.ui.SwingWorker"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$514(org.locationtech.jtstest.testbuilder.controller.ResultController,long)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$500(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$600()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.text.NumberFormat"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$700(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.DefaultListModel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JList].<init>(javax.swing.ListModel)"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel,org.locationtech.jtstest.testbuilder.TestListPanel$1)"
    - "[javax.swing.JList].setCellRenderer(javax.swing.ListCellRenderer)"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].registerListSelectionListener()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:127,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:39,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:40,1"
      Dst: "[javax.swing.DefaultListModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:41,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:42,1"
      Dst: "[javax.swing.JList].<init>(javax.swing.ListModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:131,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel$TestListCellRenderer].<init>(org.locationtech.jtstest.testbuilder.TestListPanel,org.locationtech.jtstest.testbuilder.TestListPanel$1)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:133,1"
      Dst: "[javax.swing.JList].setCellRenderer(javax.swing.ListCellRenderer)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].registerListSelectionListener()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JList].setSelectionMode(int)"
    - "[javax.swing.JList].setSelectionBackground(java.awt.Color)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:138,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:139,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:140,1"
      Dst: "[javax.swing.JList].setSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:141,1"
      Dst: "[javax.swing.JList].setSelectionBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:142,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:143,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].registerListSelectionListener()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JList].getSelectionModel()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel$1].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    - "[javax.swing.ListSelectionModel].addListSelectionListener(javax.swing.event.ListSelectionListener)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:147,1"
      Dst: "[javax.swing.JList].getSelectionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel$1].<init>(org.locationtech.jtstest.testbuilder.TestListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:147,1"
      Dst: "[javax.swing.ListSelectionModel].addListSelectionListener(javax.swing.event.ListSelectionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.DefaultListModel].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestListPanel:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:159,1"
      Dst: "[javax.swing.DefaultListModel].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:163,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:164,1"
      Dst: "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.text.NumberFormat].getInstance()"
    - "[java.text.NumberFormat].setGroupingUsed(boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:47,1"
      Dst: "[java.text.NumberFormat].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:48,1"
      Dst: "[java.text.NumberFormat].setGroupingUsed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].paint(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawAxes(java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawLinedGrid(java.awt.Graphics2D)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawAxes(java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawLinedGrid(java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawAxes(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:84,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:85,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:85,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:88,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:89,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:93,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:92,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].setLocation(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:212,1"
      Dst: "[java.awt.geom.Point2D].setLocation(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:213,1"
      Dst: "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.AffineTransform"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawLinedGrid(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.BasicStroke].<init>()"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].gray(int)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    functionUses: 0
    ICount: 105
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:138,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:148,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:149,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:150,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:174,1"
      Dst: "[java.awt.BasicStroke].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:174,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].gray(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:175,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:176,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:176,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:186,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:380,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:381,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:386,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:387,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].log10(double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:92,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.math.MathUtil:93,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.math.MathUtil:94,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].gray(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].<init>(int,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:24,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:459"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:458"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:438,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].paintTop(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleBar(java.awt.Graphics2D)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleBar(java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleBar(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].setAntiAlias(java.awt.Graphics2D,boolean)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics].fillRect(int,int,int,int)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleLabel(java.awt.Graphics2D)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:371,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:372,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:374,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:376,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:377,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:378,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:378,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:379,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:380,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:380,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:393,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].setAntiAlias(java.awt.Graphics2D,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:394,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:395,1"
      Dst: "[java.awt.Graphics].fillRect(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:398,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:404,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:409,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:409,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:414,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleLabel(java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:380,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:381,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:386,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:387,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].setAntiAlias(java.awt.Graphics2D,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Graphics2D"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setRenderingHint(java.awt.RenderingHints$Key,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:285,1"
      Dst: "[java.awt.Graphics2D].setRenderingHint(java.awt.RenderingHints$Key,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleLabel(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.lang.Math].abs(int)"
    - "[java.text.NumberFormat].format(double)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:362"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:339,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:340,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:340,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:342,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:343,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:344,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:350,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:357,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:359,1"
      Dst: "[java.text.NumberFormat].format(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:359,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].isResolvable()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Point].<init>(int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isResolvable(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:75,1"
      Dst: "[java.awt.Point].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isResolvable(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:189,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:190,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:194,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:199,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isResolvable(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:85,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawAxes(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:84,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:85,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:85,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:88,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:89,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:93,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:92,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].maxVisibleMagnitude()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jts.geom.Envelope].maxExtent()"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:103,1"
      Dst: "[org.locationtech.jts.geom.Envelope].maxExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:107,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].maxExtent()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:381"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:380,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:381,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:382,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.MathUtil].log10(double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:92,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.math.MathUtil:93,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.math.MathUtil:94,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawLinedGrid(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.BasicStroke].<init>()"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].gray(int)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    functionUses: 0
    ICount: 105
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:138,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:148,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:149,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:150,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:174,1"
      Dst: "[java.awt.BasicStroke].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:174,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].gray(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:175,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:176,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:176,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:186,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawDottedGrid(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.BasicStroke].<init>()"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    functionUses: 0
    ICount: 115
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:311"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:220,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:229,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:231,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:231,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:232,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:233,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:233,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:236,1"
      Dst: "[java.awt.BasicStroke].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:236,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:237,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:238,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:238,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:250,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:380,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:381,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:386,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:387,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:459"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:458"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:438,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleLabel(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.lang.Math].abs(int)"
    - "[java.text.NumberFormat].format(double)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:362"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:339,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:340,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:340,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:342,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:343,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:344,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:350,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:357,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:359,1"
      Dst: "[java.text.NumberFormat].format(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:359,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleBar(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].setAntiAlias(java.awt.Graphics2D,boolean)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics].fillRect(int,int,int,int)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleLabel(java.awt.Graphics2D)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:412"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:371,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:372,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:374,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:376,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:377,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:378,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:378,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:379,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:380,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:380,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:393,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].setAntiAlias(java.awt.Graphics2D,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:394,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:395,1"
      Dst: "[java.awt.Graphics].fillRect(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:398,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:404,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:409,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:409,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:414,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleLabel(java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawFixedGrid(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getLowerLeftCornerInModel()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToMajorGrid(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:420,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:421,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:424,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getLowerLeftCornerInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:426,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToMajorGrid(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:426,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:427,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:429,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:429,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:431,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:432,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getLowerLeftCornerInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Point].<init>(int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:332,1"
      Dst: "[java.awt.Point].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:332,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:189,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:190,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:194,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:199,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToMajorGrid(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.lang.Math].floor(double)"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:55,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:55,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:56,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:62,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:75"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:459"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:458"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:438,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawGridLines(java.awt.Graphics2D,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:448"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:459"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:458"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:438,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:451,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].drawScaleMarks(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].maxVisibleMagnitude()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - "[org.locationtech.jts.geom.Envelope].maxExtent()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:484"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:495"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:498"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:504"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:503"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:473,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:475,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].maxVisibleMagnitude()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:476,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:477,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:480,1"
      Dst: "[org.locationtech.jts.geom.Envelope].maxExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:485,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:488,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:489,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:491,1"
      Dst: "[java.awt.geom.Line2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:491,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:504,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:505,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:505,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:505,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:505,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:86,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].maxVisibleMagnitude()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jts.geom.Envelope].maxExtent()"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:103,1"
      Dst: "[org.locationtech.jts.geom.Envelope].maxExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GridElement:107,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].maxExtent()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:381"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:380,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:381,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:382,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.UncheckedJDOMFactory].<init>()"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:68,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:78"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:81"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:76,1"
      Dst: "[org.jdom2.Element].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.Element].<init>()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:147,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Element:129,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:115,1"
      Dst: "[java.util.AbstractList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].element(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Element"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:87,1"
      Dst: "[org.jdom2.Element].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:147,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Element:129,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].element(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:95,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.UncheckedJDOMFactory:95,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.DefaultJDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:195,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:201,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].element(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Element"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.DefaultJDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:100,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.UncheckedJDOMFactory:100,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.DefaultJDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:195,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].element(int,int,java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:112"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:115"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:109,1"
      Dst: "[org.jdom2.Attribute].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.Attribute].<init>()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:155,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CloneBase].<init>()"
    functionSourceFile: "org.jdom2.CloneBase"
    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: "org.jdom2.CloneBase:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,int,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.Attribute"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeType].byIndex(int)"
    - "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:122,1"
      Dst: "[org.jdom2.AttributeType].byIndex(int)"
    - Src: "org.jdom2.UncheckedJDOMFactory:122,1"
      Dst: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].byIndex(int)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    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()"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - "[org.jdom2.AttributeType].values()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:161"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:164"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:163"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:164"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:168"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeType:164,1"
      Dst: "[org.jdom2.AttributeType].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:131"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:134"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:127,1"
      Dst: "[org.jdom2.Attribute].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.Attribute].<init>()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:155,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:131"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:134"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:127,1"
      Dst: "[org.jdom2.Attribute].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:140,1"
      Dst: "[org.jdom2.Attribute].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:155,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeType].byIndex(int)"
    - "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:151,1"
      Dst: "[org.jdom2.AttributeType].byIndex(int)"
    - Src: "org.jdom2.UncheckedJDOMFactory:151,1"
      Dst: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeType].byIndex(int)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    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()"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - "[org.jdom2.AttributeType].values()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:161"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:164"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:163"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:164"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:168"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeType:162,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeType:164,1"
      Dst: "[org.jdom2.AttributeType].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:156,1"
      Dst: "[org.jdom2.Attribute].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].<init>()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:155,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Attribute"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "org.jdom2.AttributeType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:156,1"
      Dst: "[org.jdom2.Attribute].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].text(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Text"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:170,1"
      Dst: "[org.jdom2.Text].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].<init>()"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:98,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content$CType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:89,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].cdata(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.CDATA"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CDATA].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:181,1"
      Dst: "[org.jdom2.CDATA].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CDATA].<init>()"
    functionSourceFile: "org.jdom2.CDATA"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.CDATA:84,1"
      Dst: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Text].<init>(org.jdom2.Content$CType)"
    functionSourceFile: "org.jdom2.Text"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content$CType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Text:89,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].comment(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.Comment"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Comment].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:192,1"
      Dst: "[org.jdom2.Comment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].<init>()"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:79,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].processingInstruction(int,int,java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>()"
    - "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:203,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>()"
    - Src: "org.jdom2.UncheckedJDOMFactory:205,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:91,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    - "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - "[java.util.LinkedHashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:225"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:229"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:222,1"
      Dst: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    - Src: "org.jdom2.ProcessingInstruction:224,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:226,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:230,1"
      Dst: "[java.util.LinkedHashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.UncheckedJDOMFactory].processingInstruction(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>()"
    - "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:211,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>()"
    - Src: "org.jdom2.UncheckedJDOMFactory:213,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:91,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:203"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:207"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:202,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:204,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:208,1"
      Dst: "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.UncheckedJDOMFactory].processingInstruction(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:219,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:91,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].entityRef(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.EntityRef"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:231,1"
      Dst: "[org.jdom2.EntityRef].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>()"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:86,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.EntityRef"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:238,1"
      Dst: "[org.jdom2.EntityRef].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>()"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:86,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.EntityRef"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.EntityRef].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:246,1"
      Dst: "[org.jdom2.EntityRef].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.EntityRef].<init>()"
    functionSourceFile: "org.jdom2.EntityRef"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.EntityRef:86,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.DocType"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:259,1"
      Dst: "[org.jdom2.DocType].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].<init>()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:99,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].docType(int,int,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.DocType"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:268,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DefaultJDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.DocType"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:146,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.DocType"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:152,1"
      Dst: "[org.jdom2.DocType].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].docType(int,int,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.DocType"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:273,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DefaultJDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.DocType"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DefaultJDOMFactory:146,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.Document"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.DocType"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].<init>()"
    - "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:283"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.UncheckedJDOMFactory:286"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:289"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:288"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.UncheckedJDOMFactory:289"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:292"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:282,1"
      Dst: "[org.jdom2.Document].<init>()"
    - Src: "org.jdom2.UncheckedJDOMFactory:284,1"
      Dst: "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.jdom2.Document].<init>()"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.CloneBase].<init>()"
    - "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Document:99,1"
      Dst: "[org.jdom2.CloneBase].<init>()"
    - Src: "org.jdom2.Document:83,1"
      Dst: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.CloneBase].<init>()"
    functionSourceFile: "org.jdom2.CloneBase"
    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: "org.jdom2.CloneBase:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].<init>(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:115,1"
      Dst: "[java.util.AbstractList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Parent"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:311"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:316"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:313,1"
      Dst: "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].ensureCapacity(int)"
    - "[org.jdom2.ContentList].incModCount()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:128,1"
      Dst: "[org.jdom2.ContentList].ensureCapacity(int)"
    - Src: "org.jdom2.ContentList:130,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].ensureCapacity(int)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 412
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:413"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:416"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:415"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:416"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:424"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:423"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    - Branch String: "org.jdom2.ContentList:425"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:424"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
      - BranchSide: "org.jdom2.ContentList:423"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "org.jdom2.ContentList:414,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.jdom2.ContentList:425,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    functionSourceFile: "org.jdom2.internal.ArrayCopy"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ArrayCopy:82"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ArrayCopy:81"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ArrayCopy:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.jdom2.internal.ArrayCopy:82,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.ContentList].incModCount()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.DocType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:297,1"
      Dst: "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.Document"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.DocType"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].<init>()"
    - "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:283"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.UncheckedJDOMFactory:286"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:289"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:288"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.UncheckedJDOMFactory:289"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:292"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:282,1"
      Dst: "[org.jdom2.Document].<init>()"
    - Src: "org.jdom2.UncheckedJDOMFactory:284,1"
      Dst: "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:302,1"
      Dst: "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.UncheckedJDOMFactory].document(org.jdom2.Element,org.jdom2.DocType,java.lang.String)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.Document"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.DocType"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].<init>()"
    - "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:283"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.UncheckedJDOMFactory:286"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:289"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:288"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.UncheckedJDOMFactory:289"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:292"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:282,1"
      Dst: "[org.jdom2.Document].<init>()"
    - Src: "org.jdom2.UncheckedJDOMFactory:284,1"
      Dst: "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.jdom2.UncheckedJDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Parent"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:311"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:316"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:313,1"
      Dst: "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.UncheckedJDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getAttributeList()"
    - "[org.jdom2.AttributeList].uncheckedAddAttribute(org.jdom2.Attribute)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:323,1"
      Dst: "[org.jdom2.Element].getAttributeList()"
    - Src: "org.jdom2.UncheckedJDOMFactory:323,1"
      Dst: "[org.jdom2.AttributeList].uncheckedAddAttribute(org.jdom2.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getAttributeList()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 1086
    functionDepth: 1
    returnType: "org.jdom2.AttributeList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].<init>(org.jdom2.Element)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1087"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1090"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element)"
      - BranchSide: "org.jdom2.Element:1089"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:1088,1"
      Dst: "[org.jdom2.AttributeList].<init>(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.AttributeList].uncheckedAddAttribute(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:123,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].ensureCapacity(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 361
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:362"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:366"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:365"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:366"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:371"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "org.jdom2.AttributeList:363,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.jdom2.AttributeList:372,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    functionSourceFile: "org.jdom2.internal.ArrayCopy"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getComponentType()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ArrayCopy:82"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ArrayCopy:81"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ArrayCopy:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.Class].getComponentType()"
    - Src: "org.jdom2.internal.ArrayCopy:81,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.jdom2.internal.ArrayCopy:82,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.UncheckedJDOMFactory].addNamespaceDeclaration(org.jdom2.Element,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.UncheckedJDOMFactory:328"
      Branch Sides:
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:331"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.UncheckedJDOMFactory:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:329,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.UncheckedJDOMFactory:331,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.UncheckedJDOMFactory].setRoot(org.jdom2.Document,org.jdom2.Element)"
    functionSourceFile: "org.jdom2.UncheckedJDOMFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Document"
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.UncheckedJDOMFactory:336,1"
      Dst: "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].uncheckedAddContent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].ensureCapacity(int)"
    - "[org.jdom2.ContentList].incModCount()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:128,1"
      Dst: "[org.jdom2.ContentList].ensureCapacity(int)"
    - Src: "org.jdom2.ContentList:130,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.WKBDump].<init>()"
    functionSourceFile: "org.locationtech.jtstest.cmd.WKBDump"
    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: "org.locationtech.jtstest.cmd.WKBDump:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConstraintVertex:35,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].setOnConstraint(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].isOnConstraint()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].setConstraint(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].getConstraint()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintVertex"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConstraintVertex:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConstraintVertex:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConstraintVertex:86"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:65,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:75,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].getType()"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 18
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:101"
        BranchSideFuncs:
        - "measures(org.locationtech.jts.geom.Coordinate)"
        - "dimension(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:101"
        BranchSideFuncs:
        - "measures(org.locationtech.jts.geom.Coordinate)"
        - "dimension(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:101"
        BranchSideFuncs:
        - "measures(org.locationtech.jts.geom.Coordinate)"
        - "dimension(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:103"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:98,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:99,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:102,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:104,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:66"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:86"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXY].getOrdinate(int)"
    functionUses: 1
    ICount: 40
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:302"
        BranchSideFuncs:
        - "getOrdinate(int)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:298,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:308,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[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: 5
    ICount: 17
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:236,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 485
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXY].getOrdinate(int)"
    functionUses: 1
    ICount: 43
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:491"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:500"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:499"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:490"
        BranchSideFuncs:
        - "getOrdinate(int)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:489"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:486,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:496,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:112,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:115,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:115,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:117,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double"
    linkageType: null
    functionLinenumber: 297
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXY].getOrdinate(int)"
    functionUses: 1
    ICount: 40
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:302"
        BranchSideFuncs:
        - "getOrdinate(int)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:298,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:308,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 485
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXY].getOrdinate(int)"
    functionUses: 1
    ICount: 43
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:491"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:500"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:499"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:490"
        BranchSideFuncs:
        - "getOrdinate(int)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:489"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:486,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:496,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(double[],int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "double[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(double[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:131,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(double[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(double[],int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(double[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:146,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(double[],int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:148,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(double[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double"
    linkageType: null
    functionLinenumber: 257
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:263"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:258,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:260,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:463"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:465"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:460,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(double[],int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(double[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:146,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(double[],int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:148,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(double[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(float[],int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "float[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(float[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:160,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:160,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(float[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(float[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "float[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(float[],int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:174,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(float[],int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:176,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(float[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "float[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:274,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 443
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "float[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:449"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:444,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(float[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "float[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(float[],int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:174,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(float[],int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:176,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(int,int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(int,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:186,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:186,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(int,int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:189,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double"
    linkageType: null
    functionLinenumber: 329
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:330,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 509
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:510,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(int,int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(int,int,int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:199"
        BranchSideFuncs:
        - "<init>(int,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:198,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(int,int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory:200,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double"
    linkageType: null
    functionLinenumber: 329
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:330,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 509
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:510,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].precisionScaleFactor(org.locationtech.jts.geom.Geometry,double,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 1
    ICount: 30
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:133"
        BranchSideFuncs:
        - "max(double,double,double,double)"
        - "getEnvelopeInternal()"
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:136,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:136,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:137,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:138,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:139,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:135,1"
      Dst: "[org.locationtech.jts.math.MathUtil].max(double,double,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:146,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:149,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:181,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:182,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 317
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:318,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:366,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:200,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:201,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].setQuadrantSegments(int)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:217,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:218,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].setQuadrantSegments(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:219,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 317
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:318,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].setQuadrantSegments(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].setQuadrantSegments(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:354,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].setQuadrantSegments(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].setQuadrantSegments(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:366,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].setQuadrantSegments(int)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].setEndCapStyle(int)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:239,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:240,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].setQuadrantSegments(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:241,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].setEndCapStyle(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:242,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 317
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:318,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].setQuadrantSegments(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].setQuadrantSegments(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:354,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].setQuadrantSegments(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].setEndCapStyle(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].setEndCapStyle(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:343,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].setEndCapStyle(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferParameters].setEndCapStyle(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferParameters"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:366,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferByZero(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:265,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:269,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:271,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:274,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.buffer.BufferOp].extractPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:288,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:291,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:292,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].extractPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:294,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:294,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:295,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].extractPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:299,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:300,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:300,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 317
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:318,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:329,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:307,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].setEndCapStyle(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].setEndCapStyle(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:343,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].setEndCapStyle(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].setQuadrantSegments(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].setQuadrantSegments(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:354,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].setQuadrantSegments(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:366,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].computeGeometry()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 371
    functionDepth: 23
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferOriginalPrecision()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision()"
    functionUses: 1
    ICount: 15
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:374"
        BranchSideFuncs:
        - "getFactory()"
        - "getType()"
        - "getPrecisionModel()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:379"
        BranchSideFuncs:
        - "bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:378"
        BranchSideFuncs:
        - "bufferReducedPrecision()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:372,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOriginalPrecision()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:375,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:375,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:376,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:377,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:379,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 384
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:385"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferOp:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferOp:394"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:387,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferReducedPrecision(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 402
    functionDepth: 21
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].precisionScaleFactor(org.locationtech.jts.geom.Geometry,double,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:403,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].precisionScaleFactor(org.locationtech.jts.geom.Geometry,double,int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:406,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:407,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOriginalPrecision()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 413
    functionDepth: 20
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:414,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:415,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 426
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.buffer.BufferBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].<init>(org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].setInvertOrientation(boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:427,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].<init>(org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:428,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].setInvertOrientation(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferFixedPrecision(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 20
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].setWorkingPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 2
    ICount: 17
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:447,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:447,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:448,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:448,1"
      Dst: "[org.locationtech.jts.noding.ScaledNoder].<init>(org.locationtech.jts.noding.Noder,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:450,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].createBufferBullder()"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:451,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].setWorkingPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:452,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:454,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$1].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:149,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$1].compare(java.lang.Integer,java.lang.Integer)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Integer"
    - "java.lang.Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.operation.union.DisjointSets].access$000(org.locationtech.jts.operation.union.DisjointSets,int)"
    - "[java.lang.Integer].compare(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$1:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$1:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$1:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$1:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$1:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:152,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:152,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].access$000(org.locationtech.jts.operation.union.DisjointSets,int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:157,1"
      Dst: "[java.lang.Integer].compare(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].access$000(org.locationtech.jts.operation.union.DisjointSets,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.union.DisjointSets"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:36,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets$1].compare(java.lang.Integer,java.lang.Integer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:149,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$1].compare(java.lang.Integer,java.lang.Integer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$1].compare(java.lang.Integer,java.lang.Integer)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Integer"
    - "java.lang.Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.operation.union.DisjointSets].access$000(org.locationtech.jts.operation.union.DisjointSets,int)"
    - "[java.lang.Integer].compare(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$1:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$1:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$1:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$1:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$1:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:152,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:152,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].access$000(org.locationtech.jts.operation.union.DisjointSets,int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$1:157,1"
      Dst: "[java.lang.Integer].compare(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint].<init>(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint:287,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint:295,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:232,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$5].colorChanged(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:234,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$5:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate$DimensionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:498"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:497"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:498"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:499"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:500"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:504"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:501"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:506"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:505"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:500,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate$DimensionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:516,1"
      Dst: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate$DimensionalComparator"
    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: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:529"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:528"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:529"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:528"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:526,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:528,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate$DimensionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:545"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:546"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:549"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:550"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:551"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:544,1"
      Dst: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(double,double)"
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:552,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate$DimensionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:498"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:497"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:498"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:499"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:500"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:504"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:501"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:506"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:505"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:500,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate$DimensionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:484,1"
      Dst: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate$DimensionalComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:545"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:546"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:549"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:550"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:551"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:544,1"
      Dst: "[org.locationtech.jts.geom.Coordinate$DimensionalComparator].compare(double,double)"
    - Src: "org.locationtech.jts.geom.Coordinate$DimensionalComparator:552,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.util.NamespaceStack$NamespaceIterable].<init>(org.jdom2.Namespace[],boolean)"
    functionSourceFile: "org.jdom2.util.NamespaceStack$NamespaceIterable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.Namespace[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$NamespaceIterable:187,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$NamespaceIterable].iterator()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$NamespaceIterable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].<init>(org.jdom2.Namespace[])"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].<init>(org.jdom2.Namespace[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.util.NamespaceStack$NamespaceIterable:193"
      Branch Sides:
      - BranchSide: "org.jdom2.util.NamespaceStack$NamespaceIterable:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$NamespaceIterable:193,1"
      Dst: "[org.jdom2.util.NamespaceStack$ForwardWalker].<init>(org.jdom2.Namespace[])"
    - Src: "org.jdom2.util.NamespaceStack$NamespaceIterable:193,1"
      Dst: "[org.jdom2.util.NamespaceStack$BackwardWalker].<init>(org.jdom2.Namespace[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.util.NamespaceStack$ForwardWalker].<init>(org.jdom2.Namespace[])"
    functionSourceFile: "org.jdom2.util.NamespaceStack$ForwardWalker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$ForwardWalker:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$BackwardWalker].<init>(org.jdom2.Namespace[])"
    functionSourceFile: "org.jdom2.util.NamespaceStack$BackwardWalker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$BackwardWalker:151,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.IntervalSize].<init>()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.IntervalSize"
    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: "org.locationtech.jts.index.quadtree.IntervalSize:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.IntervalSize].isZeroWidth(double,double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.IntervalSize"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.IntervalSize:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.IntervalSize:45"
        BranchSideFuncs:
        - "exponent(double)"
    - Branch String: "org.locationtech.jts.index.quadtree.IntervalSize:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.IntervalSize:45"
        BranchSideFuncs:
        - "exponent(double)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.IntervalSize:46,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.index.quadtree.IntervalSize:46,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.index.quadtree.IntervalSize:48,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].clean(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jtslab.clean.HoleRemover$Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    - "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].getResult()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:70,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:71,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jtslab.clean.HoleRemover$Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover].getResult()"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jtslab.clean.SmallHoleRemover$IsSmall].value(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtslab.clean.HoleRemover$Predicate].value(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 31
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:95"
        BranchSideFuncs:
        - "getInteriorRingN(int)"
        - "value(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:94"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:83"
        BranchSideFuncs:
        - "getFactory()"
        - "createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:98"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
        - "getExteriorRing()"
        - "toLinearRingArray(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:85,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:87,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:88,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:89,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:90,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$Predicate].value(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:91,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:95,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:100,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover$PolygonHoleRemover:99,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.jdom2.xpath.XPathHelper].<init>()"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    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: "org.jdom2.xpath.XPathHelper:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.util.List"
    - "java.lang.String"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:152"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:166"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:165"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:155"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:160"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:159"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:157"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:155"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:154"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:160"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:162"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:160"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:150,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:154,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.XPathHelper:155,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.XPathHelper:157,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.XPathHelper:163,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.xpath.XPathHelper:163,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "org.jdom2.NamespaceAware"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.filter.Filters].text()"
    - "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - "[org.jdom2.filter.Filters].comment()"
    - "[org.jdom2.filter.Filters].processinginstruction()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getName()"
    - "[org.jdom2.Element].getChildren(java.lang.String)"
    - "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Element].getNamespaceURI()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[org.jdom2.Parent].getContent()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:180"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:186"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:188"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:192"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:194"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:193"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:198"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:200"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:211"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:215"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:224"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:219"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:232"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:237"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:249"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:248"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:239"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:184,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.filter.Filters].text()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - Src: "org.jdom2.xpath.XPathHelper:190,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:194,1"
      Dst: "[org.jdom2.filter.Filters].comment()"
    - Src: "org.jdom2.xpath.XPathHelper:200,1"
      Dst: "[org.jdom2.filter.Filters].processinginstruction()"
    - Src: "org.jdom2.xpath.XPathHelper:205,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:210,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:211,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:224,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[org.jdom2.Element].getNamespaceURI()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.xpath.XPathHelper:239,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:240,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:244,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 36
  - functionName: "[org.jdom2.filter.Filters].text()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.util.List"
    - "java.lang.String"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:152"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:166"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:165"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:155"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:160"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:159"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:157"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:155"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:154"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:160"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:162"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:160"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:150,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:154,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.XPathHelper:155,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.XPathHelper:157,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.XPathHelper:163,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.xpath.XPathHelper:163,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[org.jdom2.filter.Filters].comment()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].processinginstruction()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespace()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 238
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 212
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getChildren(java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:1543,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.ContentList].getView(org.jdom2.filter.Filter)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:1564,1"
      Dst: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.Element:1564,1"
      Dst: "[org.jdom2.ContentList].getView(org.jdom2.filter.Filter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.ElementFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ElementFilter:108,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].getView(org.jdom2.filter.Filter)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.jdom2.filter.Filter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].<init>(org.jdom2.ContentList,org.jdom2.filter.Filter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:452,1"
      Dst: "[org.jdom2.ContentList$FilterList].<init>(org.jdom2.ContentList,org.jdom2.filter.Filter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList$FilterList].<init>(org.jdom2.ContentList,org.jdom2.filter.Filter)"
    functionSourceFile: "org.jdom2.ContentList$FilterList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.ContentList"
    - "org.jdom2.filter.Filter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    - "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList$FilterList:940,1"
      Dst: "[java.util.AbstractList].<init>()"
    - Src: "org.jdom2.ContentList$FilterList:929,1"
      Dst: "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].access$200(org.jdom2.ContentList)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.ContentList"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespaceURI()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getURI()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:294,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getNamespace()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getName()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 335
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getNamespaceURI()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 418
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getURI()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:419,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Parent"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.jdom2.Parent].getParent()"
    - "[java.util.ArrayList].size()"
    - "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.ArrayList].get(int)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:270"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:278"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:277"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:288"
      Branch Sides: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:302"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:308"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:314"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:319"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:271,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:278,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:281,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:282,1"
      Dst: "[org.jdom2.Parent].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:286,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.jdom2.xpath.XPathHelper:296,1"
      Dst: "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - Src: "org.jdom2.xpath.XPathHelper:303,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.jdom2.Parent"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:335"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:336"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:334,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.xpath.XPathHelper:336,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "org.jdom2.NamespaceAware"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.filter.Filters].text()"
    - "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - "[org.jdom2.filter.Filters].comment()"
    - "[org.jdom2.filter.Filters].processinginstruction()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getName()"
    - "[org.jdom2.Element].getChildren(java.lang.String)"
    - "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Element].getNamespaceURI()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[org.jdom2.Parent].getContent()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:180"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:186"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:188"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:192"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:194"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:193"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:198"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:200"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:211"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:215"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:224"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:219"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:232"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:237"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:249"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:248"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:239"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:184,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.filter.Filters].text()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - Src: "org.jdom2.xpath.XPathHelper:190,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:194,1"
      Dst: "[org.jdom2.filter.Filters].comment()"
    - Src: "org.jdom2.xpath.XPathHelper:200,1"
      Dst: "[org.jdom2.filter.Filters].processinginstruction()"
    - Src: "org.jdom2.xpath.XPathHelper:205,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:210,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:211,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:224,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[org.jdom2.Element].getNamespaceURI()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.xpath.XPathHelper:239,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:240,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:244,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 36
  - functionName: "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.jdom2.Parent"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:335"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:336"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:334,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.xpath.XPathHelper:336,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Content"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.Content].getParentElement()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - "[org.jdom2.Content].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:357"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:361"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:360"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:361"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:365"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:364"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:366"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:369"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:368"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:369"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:369"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:368"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:371"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:374"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:373"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:374"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:377"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:376"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:378"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:382"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:358,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:369,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.xpath.XPathHelper:372,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:375,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:377,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:379,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:384,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:386,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 17
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Parent"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.jdom2.Parent].getParent()"
    - "[java.util.ArrayList].size()"
    - "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.ArrayList].get(int)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:270"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:278"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:277"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:288"
      Branch Sides: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:302"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:308"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:314"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:319"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:271,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:278,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:281,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:282,1"
      Dst: "[org.jdom2.Parent].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:286,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.jdom2.xpath.XPathHelper:296,1"
      Dst: "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - Src: "org.jdom2.xpath.XPathHelper:303,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "org.jdom2.NamespaceAware"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.filter.Filters].text()"
    - "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - "[org.jdom2.filter.Filters].comment()"
    - "[org.jdom2.filter.Filters].processinginstruction()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getName()"
    - "[org.jdom2.Element].getChildren(java.lang.String)"
    - "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Element].getNamespaceURI()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[org.jdom2.Parent].getContent()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:180"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:186"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:188"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:192"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:194"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:193"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:198"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:200"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:211"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:215"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:224"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:219"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:232"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:237"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:249"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:248"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:239"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:184,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.filter.Filters].text()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - Src: "org.jdom2.xpath.XPathHelper:190,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:194,1"
      Dst: "[org.jdom2.filter.Filters].comment()"
    - Src: "org.jdom2.xpath.XPathHelper:200,1"
      Dst: "[org.jdom2.filter.Filters].processinginstruction()"
    - Src: "org.jdom2.xpath.XPathHelper:205,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:210,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:211,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:224,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[org.jdom2.Element].getNamespaceURI()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.xpath.XPathHelper:239,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:240,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:244,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 36
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Content"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.Attribute].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:403"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:407"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:406"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:407"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:411"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:410"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:412"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:416"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:415"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:404,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:411,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:413,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:416,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    - Src: "org.jdom2.xpath.XPathHelper:416,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:418,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:419,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Content"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.Content].getParentElement()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - "[org.jdom2.Content].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:357"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:361"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:360"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:361"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:365"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:364"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:366"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:369"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:368"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:369"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:369"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:368"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:371"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:374"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:373"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:374"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:377"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:376"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:378"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:382"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:358,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:369,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.xpath.XPathHelper:372,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:375,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:377,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:379,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:384,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:386,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 17
  - functionName: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "org.jdom2.NamespaceAware"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.filter.Filters].text()"
    - "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - "[org.jdom2.filter.Filters].comment()"
    - "[org.jdom2.filter.Filters].processinginstruction()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getName()"
    - "[org.jdom2.Element].getChildren(java.lang.String)"
    - "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Element].getNamespaceURI()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[org.jdom2.Parent].getContent()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:180"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:186"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:188"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:192"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:194"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:193"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:198"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:200"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:211"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:215"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:224"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:219"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:232"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:237"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:249"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:248"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:239"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:184,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.filter.Filters].text()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - Src: "org.jdom2.xpath.XPathHelper:190,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:194,1"
      Dst: "[org.jdom2.filter.Filters].comment()"
    - Src: "org.jdom2.xpath.XPathHelper:200,1"
      Dst: "[org.jdom2.filter.Filters].processinginstruction()"
    - Src: "org.jdom2.xpath.XPathHelper:205,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:210,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:211,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:224,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[org.jdom2.Element].getNamespaceURI()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.xpath.XPathHelper:239,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:240,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:244,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 36
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Attribute,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.Attribute].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Attribute)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:437"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:441"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:440"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:441"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:445"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:444"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:445"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:449"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:448"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:450"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:455"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:454"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:438,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:449,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:451,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:455,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:455,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:455,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Attribute)"
    - Src: "org.jdom2.xpath.XPathHelper:455,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Content"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.Attribute].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:403"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:407"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:406"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:407"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:411"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:410"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:412"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:416"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:415"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:404,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:411,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:413,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:416,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    - Src: "org.jdom2.xpath.XPathHelper:416,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:418,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:419,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Attribute,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.Attribute].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:472"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:476"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:475"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:476"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:480"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:479"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:481"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:485"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:484"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:485"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:488"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:487"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:473,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:480,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:482,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:488,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:488,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:488,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    - Src: "org.jdom2.xpath.XPathHelper:488,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativePath(org.jdom2.Content,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Content"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.Content].getParentElement()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - "[org.jdom2.Content].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:357"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:361"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:360"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:361"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:365"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:364"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:366"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:369"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:368"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:369"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:369"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:368"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:371"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:374"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:373"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:374"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:377"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:376"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:378"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:382"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:358,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:369,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.xpath.XPathHelper:372,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:375,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:377,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:379,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:384,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:386,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 17
  - functionName: "[org.jdom2.xpath.XPathHelper].getAbsolutePath(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.Content].getParentElement()"
    - "[org.jdom2.Content].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:501"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:506"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:505"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:508"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:506"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:505"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:510"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:520"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:519"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:511"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:516"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:515"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:521"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:524"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:523"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:526"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:530"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:529"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:530"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:534"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:502,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:506,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:508,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.xpath.XPathHelper:511,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:512,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:516,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:517,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:518,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPathHelper:528,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 17
  - functionName: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "org.jdom2.NamespaceAware"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.filter.Filters].text()"
    - "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - "[org.jdom2.filter.Filters].comment()"
    - "[org.jdom2.filter.Filters].processinginstruction()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getName()"
    - "[org.jdom2.Element].getChildren(java.lang.String)"
    - "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Element].getNamespaceURI()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[org.jdom2.Parent].getContent()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:180"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:186"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:188"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:192"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:194"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:193"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:198"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:200"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:211"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:215"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:224"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:219"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:232"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:237"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:249"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:248"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:239"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:184,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.filter.Filters].text()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - Src: "org.jdom2.xpath.XPathHelper:190,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:194,1"
      Dst: "[org.jdom2.filter.Filters].comment()"
    - Src: "org.jdom2.xpath.XPathHelper:200,1"
      Dst: "[org.jdom2.filter.Filters].processinginstruction()"
    - Src: "org.jdom2.xpath.XPathHelper:205,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:210,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:211,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:224,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[org.jdom2.Element].getNamespaceURI()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.xpath.XPathHelper:239,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:240,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:244,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 36
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Parent"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.jdom2.Parent].getParent()"
    - "[java.util.ArrayList].size()"
    - "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.ArrayList].get(int)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:270"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:278"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:277"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:288"
      Branch Sides: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:302"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:308"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:314"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:319"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:271,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:278,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:281,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:282,1"
      Dst: "[org.jdom2.Parent].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:286,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.jdom2.xpath.XPathHelper:296,1"
      Dst: "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - Src: "org.jdom2.xpath.XPathHelper:303,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.jdom2.xpath.XPathHelper].getAbsolutePath(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.Attribute].getParent()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.jdom2.Content].getParentElement()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:547"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:552"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:551"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:553"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:557"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:556"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:558"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:561"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:560"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:565"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:569"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:568"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:548,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:552,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:554,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:558,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.xpath.XPathHelper:561,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:563,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:564,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:567,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:571,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "org.jdom2.NamespaceAware"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.filter.Filters].text()"
    - "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - "[org.jdom2.filter.Filters].comment()"
    - "[org.jdom2.filter.Filters].processinginstruction()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getName()"
    - "[org.jdom2.Element].getChildren(java.lang.String)"
    - "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.Element].getNamespaceURI()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[org.jdom2.Parent].getContent()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:180"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:186"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:188"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:187"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:192"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:194"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:193"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:198"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:200"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:199"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:205"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:211"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:209"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:215"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:224"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:219"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:232"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:231"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:237"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:249"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:248"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:239"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:184,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.filter.Filters].text()"
    - Src: "org.jdom2.xpath.XPathHelper:188,1"
      Dst: "[org.jdom2.Parent].getContent(org.jdom2.filter.Filter)"
    - Src: "org.jdom2.xpath.XPathHelper:190,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getPositionPath(java.lang.Object,java.util.List,java.lang.String,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:194,1"
      Dst: "[org.jdom2.filter.Filters].comment()"
    - Src: "org.jdom2.xpath.XPathHelper:200,1"
      Dst: "[org.jdom2.filter.Filters].processinginstruction()"
    - Src: "org.jdom2.xpath.XPathHelper:205,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:210,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:211,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:224,1"
      Dst: "[org.jdom2.Element].getChildren(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[org.jdom2.Element].getNamespaceURI()"
    - Src: "org.jdom2.xpath.XPathHelper:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:232,1"
      Dst: "[org.jdom2.Parent].getContent()"
    - Src: "org.jdom2.xpath.XPathHelper:239,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.xpath.XPathHelper:240,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.xpath.XPathHelper:244,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 36
  - functionName: "[org.jdom2.xpath.XPathHelper].getRelativeElementPath(org.jdom2.Element,org.jdom2.Parent,java.lang.StringBuilder)"
    functionSourceFile: "org.jdom2.xpath.XPathHelper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Parent"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.jdom2.Parent].getParent()"
    - "[java.util.ArrayList].size()"
    - "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.ArrayList].get(int)"
    - "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.XPathHelper:270"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:278"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:277"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:280"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:286"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:285"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:288"
      Branch Sides: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:302"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:308"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.XPathHelper:314"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.XPathHelper:319"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.XPathHelper:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.XPathHelper:271,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:278,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.jdom2.xpath.XPathHelper:281,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.xpath.XPathHelper:282,1"
      Dst: "[org.jdom2.Parent].getParent()"
    - Src: "org.jdom2.xpath.XPathHelper:286,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.jdom2.xpath.XPathHelper:296,1"
      Dst: "[org.jdom2.xpath.XPathHelper].locate(org.jdom2.Parent,java.util.List)"
    - Src: "org.jdom2.xpath.XPathHelper:303,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.jdom2.xpath.XPathHelper:315,1"
      Dst: "[org.jdom2.xpath.XPathHelper].getSingleStep(org.jdom2.NamespaceAware,java.lang.StringBuilder)"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.xpath.XPathHelper:319,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.CoverageUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.CoverageUnion:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:69,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:80,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.CoverageUnion].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.CoverageUnion"
    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: "org.locationtech.jts.operation.overlayng.CoverageUnion:83,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$EmptyIterable].<init>()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$EmptyIterable"
    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: "org.jdom2.util.NamespaceStack$EmptyIterable:203,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$EmptyIterable].iterator()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$EmptyIterable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$EmptyIterable"
    linkageType: null
    functionLinenumber: 211
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 191
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$EmptyIterable"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 195
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$EmptyIterable:217,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$EmptyIterable].remove()"
    functionSourceFile: "org.jdom2.util.NamespaceStack$EmptyIterable"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$EmptyIterable:223,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.util.NamespaceStack$EmptyIterable].<init>(org.jdom2.util.NamespaceStack$1)"
    functionSourceFile: "org.jdom2.util.NamespaceStack$EmptyIterable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.util.NamespaceStack$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.util.NamespaceStack$EmptyIterable:203,1"
      Dst: "[org.jdom2.util.NamespaceStack$EmptyIterable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryCollectionNode].<init>(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "org.locationtech.jtstest.testbuilder.GeometryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,int,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:466,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:466,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,int,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryCollectionNode].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryCollectionNode].fillChildren()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jtstest.testbuilder.GeometryNode].create(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    - "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].setIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.GeometryContext].isSorted()"
    - "[org.locationtech.jtstest.testbuilder.GeometryContext].getComparator()"
    - "[java.util.List].sort(java.util.Comparator)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:481"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:484"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:477,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:478,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:478,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryNode].create(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.GeometryContext)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:479,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometricObjectNode].setIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:480,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:482,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryContext].isSorted()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:483,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryContext].getComparator()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:483,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].isSorted()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryContext:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryContext:223"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].getComparator()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryCollectionNode].getIcon()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.ImageIcon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:489"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryCollectionNode:488"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:55,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:56,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:74,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].buildPointMap(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeIntersection(java.util.Map,java.util.Map,java.util.ArrayList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeUnion(java.util.Map,java.util.Map,java.util.ArrayList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeDifference(java.util.Map,java.util.Map,java.util.ArrayList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].isEmpty()"
    functionUses: 1
    ICount: 33
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:110"
        BranchSideFuncs:
        - "createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:109"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:88,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].buildPointMap(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:91,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:94,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeIntersection(java.util.Map,java.util.Map,java.util.ArrayList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeUnion(java.util.Map,java.util.Map,java.util.ArrayList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:100,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeDifference(java.util.Map,java.util.Map,java.util.ArrayList)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:107,1"
      Dst: "[java.util.ArrayList].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:110,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeIntersection(java.util.Map,java.util.Map,java.util.ArrayList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:120"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:119"
        BranchSideFuncs:
        - "copyPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:115,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:116,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:116,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:117,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:117,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:117,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeDifference(java.util.Map,java.util.Map,java.util.ArrayList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 3
    ICount: 19
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:129"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:128"
        BranchSideFuncs:
        - "copyPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:124,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:125,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:125,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:126,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:126,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:126,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].computeUnion(java.util.Map,java.util.Map,java.util.ArrayList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 1
    ICount: 28
    EdgeCount: 69
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:139"
        BranchSideFuncs:
        - "iterator()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:138"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:144"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:143"
        BranchSideFuncs:
        - "copyPoint(org.locationtech.jts.geom.Point)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:135,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:136,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:136,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:139,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:139,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:140,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:140,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:141,1"
      Dst: "[java.util.Map$Entry].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].copyPoint(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getX(int)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getY(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 4
    ICount: 21
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:151"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "getX(int)"
        - "setOrdinate(int,int,double)"
        - "copy()"
        - "makePrecise(double)"
        - "getY(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:148,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:152,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:154,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:154,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:154,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:155,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:156,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].buildPointMap(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 1
    returnType: "java.util.HashMap"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].<init>(org.locationtech.jts.operation.overlayng.OverlayPoints,java.util.HashMap)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:160,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:161,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].<init>(org.locationtech.jts.operation.overlayng.OverlayPoints,java.util.HashMap)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:161,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].roundCoord(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:195"
        BranchSideFuncs:
        - "copy()"
        - "makePrecise(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:193,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:194,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:196,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:197,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:44"
        BranchSideFuncs:
        - "isFloating()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:43"
        BranchSideFuncs:
        - "isFloating()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:44,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].access$000(org.locationtech.jts.operation.overlayng.OverlayPoints)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayPoints"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$7].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$7:191,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$7].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$7:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].insertCmdText(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].insertCmdText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor].<init>()"
    functionSourceFile: "org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractDOMOutputProcessor].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor:102,1"
      Dst: "[org.jdom2.output.support.AbstractDOMOutputProcessor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor].<init>(org.jdom2.output.DOMOutputter$1)"
    functionSourceFile: "org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.DOMOutputter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor:102,1"
      Dst: "[org.jdom2.output.DOMOutputter$DefaultDOMOutputProcessor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$6].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$6:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$6].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.SelectionFunctions$6:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.SelectionFunctions$6:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$6:110,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].init(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:134"
        BranchSideFuncs:
        - "init(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:131,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:128,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].<init>()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:136,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].init(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].init(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].addLine(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:152"
        BranchSideFuncs:
        - "next()"
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:148"
        BranchSideFuncs:
        - "addLine(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:142,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:143,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:144,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:146,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:149,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:150,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].addLine(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].addLine(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].insert(double,double,java.lang.Object)"
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:157,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:158,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:159,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:160,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].insert(double,double,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:167,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:169,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:170,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:171,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.index.ArrayListVisitor"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.ArrayListVisitor:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.ArrayListVisitor:26,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeBranchNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:154"
        BranchSideFuncs:
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:149,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].init()"
    - Src: "org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree:155,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    functionSourceFile: "org.locationtech.jts.index.ArrayListVisitor"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "java.util.ArrayList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry"
    linkageType: null
    functionLinenumber: 175
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:177"
        BranchSideFuncs:
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry:178,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.SortedPackedIntervalRTree].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].<init>(org.locationtech.jtstest.testrunner.TestCase)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.TestCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:40,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].setGeometryA(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.TestCase].setGeometryB(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:48,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].setGeometryA(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:51,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].setGeometryB(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:54,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setIntersectionMatrix(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].setDescription(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:61,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].setDescription(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedIntersectionMatrix(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].setArgument(int,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:65,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setArgument(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].<init>(org.locationtech.jtstest.testrunner.TestCase,int,java.lang.String,java.lang.String,java.lang.String,java.util.List,org.locationtech.jtstest.testrunner.Result,double)"
    - "[org.locationtech.jtstest.testrunner.TestCase].add(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:239,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:240,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:240,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].<init>(org.locationtech.jtstest.testrunner.TestCase,int,java.lang.String,java.lang.String,java.lang.String,java.util.List,org.locationtech.jtstest.testrunner.Result,double)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:242,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].add(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.TestCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getTestIndex()"
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:281,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:282,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:282,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Result"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:255"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:248,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:249,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:251,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:253,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:253,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:253,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:254,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:254,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:256,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedConvexHull(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].<init>(org.locationtech.jtstest.testrunner.TestCase,int,java.lang.String,java.lang.String,java.lang.String,java.util.List,org.locationtech.jtstest.testrunner.Result,double)"
    - "[org.locationtech.jtstest.testrunner.TestCase].add(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:239,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:240,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:240,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].<init>(org.locationtech.jtstest.testrunner.TestCase,int,java.lang.String,java.lang.String,java.lang.String,java.util.List,org.locationtech.jtstest.testrunner.Result,double)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:242,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].add(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedBoundary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedIntersection(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedUnion(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedDifference(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSymDifference(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedCentroid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].isFailed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].isPassed()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:100"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:100,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:100,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:100,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:101,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:102,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].isPassed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getFailedMsg()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].isPassed()"
    - "[org.locationtech.jtstest.testrunner.SimpleReportWriter].<init>(boolean)"
    - "[org.locationtech.jtstest.testrunner.SimpleReportWriter].write(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:113,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:113,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:113,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:114,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:115,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].isPassed()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:116,1"
      Dst: "[org.locationtech.jtstest.testrunner.SimpleReportWriter].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:117,1"
      Dst: "[org.locationtech.jtstest.testrunner.SimpleReportWriter].write(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getDescription()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:124,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getDescription()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getGeometryA()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getGeometryB()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:129,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getGeometryA()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:132,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getGeometryB()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:134,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getIntersectionMatrix()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getGeometryA()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getGeometryB()"
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:139,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getGeometryA()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:139,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getGeometryB()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDescription()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getDescription()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:143,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getDescription()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].isPassed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].isPassed()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:150,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:150,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:150,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:151,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:152,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].isPassed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getWellKnownText(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getGeometryA()"
    - "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getGeometryB()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:161,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getGeometryA()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:164,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:167,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getGeometryB()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:172,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:382,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:385,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:388,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:390,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testrunner.TestCase"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getExpectedIntersectionMatrix()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:185,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getExpectedConvexHull()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.Test"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:224,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getExpectedBoundary()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.Test"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:224,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getExpectedIntersection()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.Test"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:224,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getExpectedUnion()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.Test"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:224,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getExpectedDifference()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.Test"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:224,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getExpectedSymDifference()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.Test"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:224,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].runTest()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].run()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:214,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].initGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].toGeometry(org.locationtech.jtstest.testrunner.Test)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.Test"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:223,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:224,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].setExpectedSpatialFunction(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:229,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].remove(org.locationtech.jtstest.testrunner.Test)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:232,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].setResult(org.locationtech.jtstest.testrunner.Result)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getOrCreateABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].<init>(org.locationtech.jtstest.testrunner.TestCase,int,java.lang.String,java.lang.String,java.lang.String,java.util.List,org.locationtech.jtstest.testrunner.Result,double)"
    - "[org.locationtech.jtstest.testrunner.TestCase].add(org.locationtech.jtstest.testrunner.Test)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:239,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:240,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:240,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].<init>(org.locationtech.jtstest.testrunner.TestCase,int,java.lang.String,java.lang.String,java.lang.String,java.util.List,org.locationtech.jtstest.testrunner.Result,double)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:242,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].add(org.locationtech.jtstest.testrunner.Test)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getDefaultResult(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Result"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:255"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:248,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:249,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:251,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:253,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:253,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:253,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:254,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:254,1"
      Dst: "[org.locationtech.jtstest.testrunner.GeometryResult].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:256,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getABTest(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testrunner.Test"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isBooleanFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:262,1"
      Dst: "[org.locationtech.jtstest.geomop.GeometryMethodOperation].isGeometryFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:261,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:265,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.BooleanResult].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:267,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:268,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:269,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:270,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].maxTestIndex(org.locationtech.jtstest.testrunner.TestCase)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testrunner.TestCase"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getTestIndex()"
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:280,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:281,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:282,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getTestIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter:282,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:45,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:46,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:47,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:48,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:49,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:50,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setXYPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBWriter"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:62,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:65,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setEncodeZ(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBWriter"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:70,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setEncodeM(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBWriter"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:75,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setZPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBWriter"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:89,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:91,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setMPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBWriter"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:105,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:107,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setIncludeSize(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBWriter"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:115,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setIncludeBbox(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBWriter"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:123,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.OutputStream)"
    - "[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,java.lang.Throwable)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:128,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:130,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.OutputStream)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:132,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:132,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:132,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:132,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:132,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:134,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.OutputStream)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:138,1"
      Dst: "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:138,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:142,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:143,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].<init>(org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].prepareHeader(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryBody(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[java.io.DataOutputStream].size()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeHeaderTo(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - "[java.io.DataOutput].write(byte[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:148,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:152,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>(org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:152,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].prepareHeader(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:154,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:155,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:156,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryBody(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:157,1"
      Dst: "[java.io.DataOutputStream].size()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:158,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:159,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeHeaderTo(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:160,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:160,1"
      Dst: "[java.io.DataOutput].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>(org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].prepareHeader(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:200,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:201,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:201,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:202,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:203,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:204,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:206,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:207,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[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: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:198,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:199,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:214,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:214,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:214,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:214,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType:214,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:399"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:402"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:401"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:396,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:397,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:397,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:400,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:400,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:403,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:406,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:408,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:408,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].hasZ()"
    - "[org.locationtech.jts.geom.CoordinateSequence].hasM()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:412,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].hasZ()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].hasM()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:414,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:414,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput:420,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput:420,1"
      Dst: "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryBody(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeBbox(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - "[java.lang.Enum].ordinal()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writePoint(org.locationtech.jts.geom.Point,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:214,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:217,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:218,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeBbox(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:220,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:220,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:221,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:223,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writePoint(org.locationtech.jts.geom.Point,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:226,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:226,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:229,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:232,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:235,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:238,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:241,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeBbox(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].computeEnvelope(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:386"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:377,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:378,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].computeEnvelope(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:381,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:384,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:254"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].computeEnvelope(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].<init>(int)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:390,1"
      Dst: "[org.locationtech.jts.io.twkb.BoundsExtractor].<init>(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:391,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.BoundsExtractor].<init>(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.BoundsExtractor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.BoundsExtractor:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[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()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:265,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 4
    argTypes:
    - "double"
    - "long"
    - "int"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:295,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:297,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].pow(double,double)"
    - "[java.lang.Math].round(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:302,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:302,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(long)"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarLong(long,java.io.DataOutput)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:73,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(long)"
    - Src: "org.locationtech.jts.io.twkb.Varint:73,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarLong(long,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(long)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarLong(long,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutput].writeByte(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:89,1"
      Dst: "[java.io.DataOutput].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writePoint(org.locationtech.jts.geom.Point,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[java.lang.AssertionError].<init>()"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:255"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:250,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:250,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:251,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:252,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:254,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:254,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:254,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Point].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 64
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:82"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:307,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:307,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - "[java.lang.Math].abs(long)"
    - "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - "[java.io.DataOutput].write(byte[])"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:261,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:264,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:266,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:272,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:273,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:274,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:277,1"
      Dst: "[java.lang.Math].abs(long)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:285,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:290,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:291,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:291,1"
      Dst: "[java.io.DataOutput].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutput].writeByte(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:109,1"
      Dst: "[java.io.DataOutput].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput:424,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:315"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:312,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:313,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:316,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:319,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:319,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:321,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:327,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:328,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:331,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:331,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[java.lang.AssertionError].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:337"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:336,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:336,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:338,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:338,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:339,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:339,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:340,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:340,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 56
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:96"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    functionUses: 6
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:87"
        BranchSideFuncs:
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:77"
        BranchSideFuncs:
        - "getNumPoints()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:348"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:344,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:345,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:347,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:347,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:370,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:371,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:352,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:353,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:355,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:360,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:362,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:363,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:364,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeHeaderTo(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].getValue()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].xyPrecision()"
    - "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasExtendedPrecision()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - "[java.io.DataOutput].writeByte(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].zPrecision()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].mPrecision()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].geometryBodySize()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:169,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:173,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:173,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].getValue()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:174,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].xyPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:174,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:177,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:178,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:179,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:180,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasExtendedPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:181,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:183,1"
      Dst: "[java.io.DataOutput].writeByte(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:186,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:186,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:187,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].zPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:188,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].mPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:193,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryBodySize()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:193,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 26
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].getValue()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].xyPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    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: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasExtendedPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:233,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:233,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].zPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].mPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryBodySize()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.OutputStream)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:138,1"
      Dst: "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:138,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:142,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:143,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].<init>(org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].prepareHeader(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryBody(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[java.io.DataOutputStream].size()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeHeaderTo(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - "[java.io.DataOutput].write(byte[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:148,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:152,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>(org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:152,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].prepareHeader(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:154,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:155,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:156,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryBody(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:157,1"
      Dst: "[java.io.DataOutputStream].size()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:158,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:159,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeHeaderTo(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:160,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:160,1"
      Dst: "[java.io.DataOutput].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeHeaderTo(org.locationtech.jts.io.twkb.TWKBHeader,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].getValue()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].xyPrecision()"
    - "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasExtendedPrecision()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - "[java.io.DataOutput].writeByte(int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].zPrecision()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].mPrecision()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].geometryBodySize()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:169,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:173,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:173,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].getValue()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:174,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].xyPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:174,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:177,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:178,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:179,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:180,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasExtendedPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:181,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:183,1"
      Dst: "[java.io.DataOutput].writeByte(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:186,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:186,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:187,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].zPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:188,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].mPrecision()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:193,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryBodySize()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:193,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 26
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].prepareHeader(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:200,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:201,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:201,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:202,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:203,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:204,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:206,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:207,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryBody(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeBbox(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - "[java.lang.Enum].ordinal()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writePoint(org.locationtech.jts.geom.Point,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:214,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:217,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:218,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeBbox(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:220,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:220,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader$GeometryType].valueOf(java.lang.Class)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:221,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:223,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writePoint(org.locationtech.jts.geom.Point,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:226,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:226,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:229,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:232,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:235,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:238,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:241,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writePoint(org.locationtech.jts.geom.Point,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[java.lang.AssertionError].<init>()"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:255"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:250,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:250,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:251,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:252,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:254,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:254,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:254,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - "[java.lang.Math].abs(long)"
    - "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - "[java.io.DataOutput].write(byte[])"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:261,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:264,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:266,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:272,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:273,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:274,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:277,1"
      Dst: "[java.lang.Math].abs(long)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:285,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:290,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:291,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter$BufferedDataOutput].content()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:291,1"
      Dst: "[java.io.DataOutput].write(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "long"
    argCount: 4
    argTypes:
    - "double"
    - "long"
    - "int"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:295,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:297,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].makePrecise(double,int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].pow(double,double)"
    - "[java.lang.Math].round(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:302,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:302,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:307,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:307,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:315"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:312,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:313,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:316,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:319,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:319,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:321,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLinearRing(org.locationtech.jts.geom.LinearRing,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:327,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:328,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:331,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:331,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPoint(org.locationtech.jts.geom.MultiPoint,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[java.lang.AssertionError].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:337"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:336,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:336,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:338,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:338,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:339,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:339,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:340,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:340,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeCoordinateSequence(org.locationtech.jts.geom.CoordinateSequence,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiLineString(org.locationtech.jts.geom.MultiLineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:348"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:344,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:345,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:347,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:347,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeLineString(org.locationtech.jts.geom.LineString,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeMultiPolygon(org.locationtech.jts.geom.MultiPolygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:352,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:353,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:355,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:355,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writePolygon(org.locationtech.jts.geom.Polygon,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,long[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeGeometryCollection(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:360,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:362,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:363,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:364,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].write(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeNumGeometries(org.locationtech.jts.geom.GeometryCollection,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:370,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:371,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].writeBbox(org.locationtech.jts.geom.Geometry,java.io.DataOutput,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.DataOutput"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].computeEnvelope(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:386"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:377,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:378,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].computeEnvelope(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:381,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:384,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].writeOrdinate(double,long,int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].computeEnvelope(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].<init>(int)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:390,1"
      Dst: "[org.locationtech.jts.io.twkb.BoundsExtractor].<init>(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:391,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.io.twkb.TWKBHeader)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:399"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:402"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:401"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBWriter:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBWriter:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:396,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:397,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:397,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:400,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:400,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.io.twkb.TWKBHeader)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:403,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:406,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:408,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:408,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.Geometry,org.locationtech.jts.io.twkb.TWKBHeader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.twkb.TWKBWriter].setDimensions(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].hasZ()"
    - "[org.locationtech.jts.geom.CoordinateSequence].hasM()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:412,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].hasZ()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].hasM()"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:414,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBWriter:414,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.LinkedLine].createNextLinks(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].createPrevLinks(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:28"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:29,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:31,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.LinkedLine:33,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].createNextLinks(int)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:34,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].createPrevLinks(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].isCorner(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:42,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].createNextLinks(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:52"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].createPrevLinks(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].size()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].prevCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:83,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].nextCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:87,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].remove(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:103"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:110,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:113,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:114,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:114,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:118,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:120,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].toString()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:124,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:124,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:110,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:113,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:114,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:114,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:118,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:120,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:108,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:118,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].readResolve()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:36,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].instance()"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 18
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:55,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:62,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinateCopy(int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:153,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:159,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:160,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getMeasures()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:161,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:164,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinateCopy(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:76"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:80,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinates].create(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:123,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:127,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinates].create(int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinates:26,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionUses: 1
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:46"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.Coordinates:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:46"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinates:39,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:41,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:43,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:45,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:40,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYM"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYM:45,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:26,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int,int)"
    functionUses: 3
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:97"
        BranchSideFuncs:
        - "<init>(int,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory:98,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.CoordinateArraySequence:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.CoordinateArraySequence:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:137,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:142,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays$ForwardComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays$ForwardComparator"
    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: "org.locationtech.jts.geom.CoordinateArrays$ForwardComparator:224,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays$ForwardComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays$ForwardComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].compare(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays$ForwardComparator:230,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].compare(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].compare(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:207,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException"
    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: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException:28,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException"
    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: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException:31,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:31,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildRings(java.util.List)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:26,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:37,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildRings(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].getPolygons()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].computePolygons(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:41,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].computePolygons(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].getShellRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].computePolygons(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:56"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "toPolygon(org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:52,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:54,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].linkResultAreaEdgesMax(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMaximalRings(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMinimalRings(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:61,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].linkResultAreaEdgesMax(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMaximalRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:63,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMinimalRings(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:64,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].linkResultAreaEdgesMax(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:74"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:72,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMaximalRings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:91"
        BranchSideFuncs:
        - "isInResultArea()"
        - "hasNext()"
        - "iterator()"
        - "getLabel()"
        - "next()"
        - "isBoundaryEither()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:90"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:81,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:82,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:83,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:85,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:86,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:87,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].buildMinimalRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignShellsAndHoles(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:100"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
        - "next()"
        - "assignShellsAndHoles(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:96,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:98,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignShellsAndHoles(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignShellsAndHoles(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].findSingleShell(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.jdom2.ContentList].addAll(java.util.Collection)"
    - "[org.jdom2.AttributeList].addAll(java.util.Collection)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:117"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:116"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:110,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].findSingleShell(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:112,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:113,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:117,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].findSingleShell(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 20
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isHole()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:139"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:139"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:135,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:140,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].assignHoles(org.locationtech.jts.operation.overlayng.OverlayEdgeRing,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:162"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isHole()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:161"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:157,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:158,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:159,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].placeFreeHoles(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PolygonBuilder"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getShell()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].findEdgeRingContaining(java.util.List)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:190"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getShell()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:189"
        BranchSideFuncs:
        - "findEdgeRingContaining(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:187"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:186"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.PolygonBuilder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:187"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PolygonBuilder:186"
        BranchSideFuncs:
        - "setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:179,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:181,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getShell()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:182,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].findEdgeRingContaining(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:185,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:185,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.PolygonBuilder:187,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].setShell(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction:143,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.IntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction:149,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction:151,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:36,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].getGeometry(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:47,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:48,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:50,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:51,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].clearCoords()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].addSeg(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 2
    ICount: 18
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:61"
        BranchSideFuncs:
        - "clearCoords()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:60"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:67"
        BranchSideFuncs:
        - "addSeg(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:66"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:70"
        BranchSideFuncs:
        - "saveCoords()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].clearCoords()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:61,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:63,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].addSeg(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:67,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].clearCoords()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 59
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:575"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:582"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:569,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 23
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].addSeg(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:76"
        BranchSideFuncs:
        - "saveCoords()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:79"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:78"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:77,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:79,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:89"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:86,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:86,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].addSeg(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:76"
        BranchSideFuncs:
        - "saveCoords()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:79"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:78"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:77,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:79,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].saveCoords()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:89"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:86,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter:86,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].clearCoords()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isDone()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].segmentEndVertexIndex(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:42,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:43,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:64,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].segmentEndVertexIndex(org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:76,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:76,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].segmentEndVertexIndex(org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LinearIterator:76,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:89,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.linearref.LinearIterator:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:96,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:105,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:120,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:130,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:133,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:149,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:177,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:189,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:42,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:42,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:53,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setConstrainedToCircle(boolean)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setGutterFraction(double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:89,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:95,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:97,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:109,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:110,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:33"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCircle(double,double,double,double)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInGridCell(double,double,double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:119,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCircle(double,double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:124,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInGridCell(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCircle(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[java.lang.Math].sqrt(double)"
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:139,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:142,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:143,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:144,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:148,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInGridCell(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].createCoord(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:129,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:131,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].createCoord(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCircle(double,double,double,double)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInGridCell(double,double,double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:119,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCircle(double,double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:124,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInGridCell(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInGridCell(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].createCoord(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:129,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:131,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].createCoord(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCircle(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[java.lang.Math].sqrt(double)"
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:139,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:142,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:143,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:144,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:148,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getBoundary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:54,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:55,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:114,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.MultiLineString].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPoint].getBoundary()"
    - "[org.locationtech.jts.geom.Polygon].getBoundary()"
    - "[org.locationtech.jts.geom.LineString].getBoundary()"
    - "[org.locationtech.jts.geom.GeometryCollection].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPolygon].getBoundary()"
    - "[org.locationtech.jts.geom.Point].getBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getBoundary()"
    functionUses: 3
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:137"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:139"
        BranchSideFuncs:
        - "getBoundary()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "getBoundary()"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:137,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:138,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:68,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:69,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:124,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:126,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.MultiLineString].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPoint].getBoundary()"
    - "[org.locationtech.jts.geom.Polygon].getBoundary()"
    - "[org.locationtech.jts.geom.LineString].getBoundary()"
    - "[org.locationtech.jts.geom.GeometryCollection].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPolygon].getBoundary()"
    - "[org.locationtech.jts.geom.Point].getBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getBoundary()"
    functionUses: 3
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:137"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:139"
        BranchSideFuncs:
        - "getBoundary()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "getBoundary()"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:137,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:138,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].hasBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 12
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.operation.BoundaryOp].getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 17
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:90"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:89"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:95"
        BranchSideFuncs:
        - "isEmpty()"
        - "getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:89,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:90,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:96,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:68,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:69,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:114,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:124,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:126,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getBoundary()"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.MultiLineString].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPoint].getBoundary()"
    - "[org.locationtech.jts.geom.Polygon].getBoundary()"
    - "[org.locationtech.jts.geom.LineString].getBoundary()"
    - "[org.locationtech.jts.geom.GeometryCollection].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPolygon].getBoundary()"
    - "[org.locationtech.jts.geom.Point].getBoundary()"
    - "[org.locationtech.jts.geom.Geometry].getBoundary()"
    functionUses: 3
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:137"
        BranchSideFuncs:
        - "boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:139"
        BranchSideFuncs:
        - "getBoundary()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:138"
        BranchSideFuncs:
        - "getBoundary()"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:137,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:138,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:144,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].boundaryMultiLineString(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - "[org.locationtech.jts.operation.BoundaryOp].computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:153"
        BranchSideFuncs:
        - "getEmptyMultiPoint()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:152"
        BranchSideFuncs:
        - "computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:160"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:159"
        BranchSideFuncs:
        - "createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:150,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:153,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:157,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:160,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].computeBoundaryCoordinates(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.operation.BoundaryOp].addEndpoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 41
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:187"
        BranchSideFuncs:
        - "getGeometryN(int)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:186"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:182"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "addEndpoint(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:196"
        BranchSideFuncs:
        - "next()"
        - "isInBoundary(int)"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:195"
        BranchSideFuncs:
        - "toCoordinateArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:177,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:178,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:179,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:180,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:181,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:183,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:183,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].addEndpoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:187,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:187,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:187,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:188,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:189,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:191,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:192,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:192,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:196,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].addEndpoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.Counter].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:206"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:201,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:203,1"
      Dst: "[org.locationtech.jts.operation.Counter].<init>()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:204,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].boundaryLineString(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.LineString].getStartPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.LineString].getEndPoint()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:215"
        BranchSideFuncs:
        - "getEmptyMultiPoint()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:214"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:215"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:221"
        BranchSideFuncs:
        - "createMultiPoint()"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:211,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:212,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getEmptyMultiPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:215,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:217,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    - Src: "org.locationtech.jts.operation.BoundaryOp:219,1"
      Dst: "[org.locationtech.jts.geom.LineString].getStartPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:227,1"
      Dst: "[org.locationtech.jts.geom.LineString].getEndPoint()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:225,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageAsPNG()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$11:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageAsPNG()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageAsPNG()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].getSavePNGFileChooser()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].chooseFilenameWithConfirm(java.awt.Component,javax.swing.JFileChooser)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].writeImage(java.awt.Component,java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:218,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].getSavePNGFileChooser()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].chooseFilenameWithConfirm(java.awt.Component,javax.swing.JFileChooser)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].writeImage(java.awt.Component,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].getSavePNGFileChooser()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JFileChooser"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].<init>()"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:166,1"
      Dst: "[javax.swing.JFileChooser].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:167,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:168,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:169,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:169,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].chooseFilenameWithConfirm(java.awt.Component,javax.swing.JFileChooser)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "javax.swing.JFileChooser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - "[java.io.File].toString()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:83,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:84,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:86,1"
      Dst: "[java.io.File].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99,1"
      Dst: "[java.io.File].exists()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].writeImage(java.awt.Component,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ImageUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].getSize()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - "[java.awt.Image].getGraphics()"
    - "[java.awt.Component].paint(java.awt.Graphics)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.File)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:51,1"
      Dst: "[java.awt.Component].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:52,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:54,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:54,1"
      Dst: "[java.awt.Component].paint(java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:56,1"
      Dst: "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    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: "org.locationtech.jts.geom.util.GeometryMapper:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(java.util.Collection,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:57,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:58,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:58,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:59,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:60,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:62,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:83,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:84,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:86,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:90,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:96,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:99,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:102,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:104,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:111,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:113,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:114,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 631
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[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: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:633,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:634,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:635,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:636,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:96,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:99,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:102,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:104,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:111,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:113,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:114,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].addFlat(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:49,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:50,1"
      Dst: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:50,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:51,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:147,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.union.UnionStrategy"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:84,1"
      Dst: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG$1:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].union(java.util.Collection,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:63,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:64,1"
      Dst: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:64,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:65,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:136,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:137,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.union.UnionStrategy"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:84,1"
      Dst: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].union(java.util.Collection,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:78,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:79,1"
      Dst: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:79,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:80,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:123,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:125,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.union.UnionStrategy"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:84,1"
      Dst: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].createUnionStrategy(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.union.UnionStrategy"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:84,1"
      Dst: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG$1].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.UnaryUnionNG].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.UnaryUnionNG"
    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: "org.locationtech.jts.operation.overlayng.UnaryUnionNG:99,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].paint(int,java.awt.geom.Point2D,java.awt.geom.Point2D,int,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "int"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - "[java.lang.Integer].toString(int)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].distToLast(double,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:48,1"
      Dst: "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:59,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:60,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:61,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:63,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:64,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].distToLast(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:91,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:92,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle:93,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:42,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].distToLast(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle].distToLast(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.SegmentIndexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].<init>(double,org.locationtech.jts.index.sweepline.SweepLineEvent,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "org.locationtech.jts.index.sweepline.SweepLineEvent"
    - "org.locationtech.jts.index.sweepline.SweepLineInterval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:35"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineEvent:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:38"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isDelete()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:39"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInsertEvent()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getDeleteEventIndex()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].setDeleteEventIndex(int)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:58"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator"
    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: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:129,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.Integer].compare(int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:133,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:133,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:133,1"
      Dst: "[java.lang.Integer].compare(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:129,1"
      Dst: "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].compare(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.Integer].compare(int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:133,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:133,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:133,1"
      Dst: "[java.lang.Integer].compare(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].<init>(org.locationtech.jtstest.function.SortingFunctions$1)"
    functionSourceFile: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.function.SortingFunctions$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator:129,1"
      Dst: "[org.locationtech.jtstest.function.SortingFunctions$UserDataIntComparator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].<init>()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:221,1"
      Dst: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].<init>(boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:244"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:244"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:244,1"
      Dst: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].<init>(java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:267,1"
      Dst: "[org.jdom2.input.SAXBuilder].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].<init>(java.lang.String,boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaderSAX2Factory].<init>(boolean,java.lang.String)"
    - "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:289,1"
      Dst: "[org.jdom2.input.sax.XMLReaderSAX2Factory].<init>(boolean,java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:289,1"
      Dst: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.input.sax.XMLReaderJDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:309,1"
      Dst: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].<init>(org.jdom2.input.sax.XMLReaderJDOMFactory,org.jdom2.input.sax.SAXHandlerFactory,org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.input.sax.XMLReaderJDOMFactory"
    - "org.jdom2.input.sax.SAXHandlerFactory"
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:338"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:337"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:336"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:341"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:344"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:341"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:337,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:178,1"
      Dst: "[java.util.HashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.input.SAXBuilder].getDriverClass()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaderSAX2Factory].getDriverClassName()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:361"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:364"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:363"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:362,1"
      Dst: "[org.jdom2.input.sax.XMLReaderSAX2Factory].getDriverClassName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.XMLReaderSAX2Factory].getDriverClassName()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderSAX2Factory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getFactory()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getJDOMFactory()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:375,1"
      Dst: "[org.jdom2.input.SAXBuilder].getJDOMFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getJDOMFactory()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getJDOMFactory()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setFactory(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].setJDOMFactory(org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:398,1"
      Dst: "[org.jdom2.input.SAXBuilder].setJDOMFactory(org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setJDOMFactory(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setJDOMFactory(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getXMLReaderFactory()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaderJDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setXMLReaderFactory(org.jdom2.input.sax.XMLReaderJDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.input.sax.XMLReaderJDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:430"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:430"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:429"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].getSAXHandlerFactory()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.SAXHandlerFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setSAXHandlerFactory(org.jdom2.input.sax.SAXHandlerFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.input.sax.SAXHandlerFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:453"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:453"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:452"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].getValidation()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].isValidating()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:465,1"
      Dst: "[org.jdom2.input.SAXBuilder].isValidating()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].isValidating()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:475,1"
      Dst: "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].isValidating()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:475,1"
      Dst: "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setValidation(boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].setXMLReaderFactory(org.jdom2.input.sax.XMLReaderJDOMFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:515"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:515"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:514"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:515,1"
      Dst: "[org.jdom2.input.SAXBuilder].setXMLReaderFactory(org.jdom2.input.sax.XMLReaderJDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].setXMLReaderFactory(org.jdom2.input.sax.XMLReaderJDOMFactory)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.input.sax.XMLReaderJDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:430"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:430"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:429"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].getErrorHandler()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.ErrorHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setErrorHandler(org.xml.sax.ErrorHandler)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.ErrorHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getEntityResolver()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.EntityResolver"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setEntityResolver(org.xml.sax.EntityResolver)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.EntityResolver"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getDTDHandler()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.DTDHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setDTDHandler(org.xml.sax.DTDHandler)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.DTDHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getXMLFilter()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.XMLFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setXMLFilter(org.xml.sax.XMLFilter)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.XMLFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getIgnoringElementContentWhitespace()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setIgnoringElementContentWhitespace(boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getIgnoringBoundaryWhitespace()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setIgnoringBoundaryWhitespace(boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getExpandEntities()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setExpandEntities(boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].getReuseParser()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setReuseParser(boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:750"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:753"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:752"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].setFastReconfigure(boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    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: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].setFeature(java.lang.String,boolean)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:799"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:799"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:798"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:799,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].setProperty(java.lang.String,java.lang.Object)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:826,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandlerFactory].createSAXHandler(org.jdom2.JDOMFactory)"
    - "[org.jdom2.input.sax.SAXHandler].setExpandEntities(boolean)"
    - "[org.jdom2.input.sax.SAXHandler].setIgnoringElementContentWhitespace(boolean)"
    - "[org.jdom2.input.sax.SAXHandler].setIgnoringBoundaryWhitespace(boolean)"
    - "[org.jdom2.input.SAXBuilder].createParser()"
    - "[org.jdom2.input.SAXBuilder].configureParser(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler)"
    - "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    - "[org.jdom2.input.sax.SAXBuilderEngine].<init>(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler,boolean)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:848,1"
      Dst: "[org.jdom2.input.sax.SAXHandlerFactory].createSAXHandler(org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.SAXBuilder:850,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].setExpandEntities(boolean)"
    - Src: "org.jdom2.input.SAXBuilder:851,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].setIgnoringElementContentWhitespace(boolean)"
    - Src: "org.jdom2.input.SAXBuilder:852,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].setIgnoringBoundaryWhitespace(boolean)"
    - Src: "org.jdom2.input.SAXBuilder:854,1"
      Dst: "[org.jdom2.input.SAXBuilder].createParser()"
    - Src: "org.jdom2.input.SAXBuilder:856,1"
      Dst: "[org.jdom2.input.SAXBuilder].configureParser(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler)"
    - Src: "org.jdom2.input.SAXBuilder:857,1"
      Dst: "[org.jdom2.input.sax.XMLReaderJDOMFactory].isValidating()"
    - Src: "org.jdom2.input.SAXBuilder:859,1"
      Dst: "[org.jdom2.input.sax.SAXBuilderEngine].<init>(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.SAXBuilder].createParser()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.XMLReader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaderJDOMFactory].createXMLReader()"
    - "[org.xml.sax.XMLFilter].getParent()"
    - "[org.xml.sax.XMLFilter].setParent(org.xml.sax.XMLReader)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:874"
      Branch Sides: []
    - Branch String: "org.jdom2.input.SAXBuilder:877"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:880"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:879"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:871,1"
      Dst: "[org.jdom2.input.sax.XMLReaderJDOMFactory].createXMLReader()"
    - Src: "org.jdom2.input.SAXBuilder:877,1"
      Dst: "[org.xml.sax.XMLFilter].getParent()"
    - Src: "org.jdom2.input.SAXBuilder:880,1"
      Dst: "[org.xml.sax.XMLFilter].setParent(org.xml.sax.XMLReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].configureParser(org.xml.sax.XMLReader,org.jdom2.input.sax.SAXHandler)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.xml.sax.XMLReader"
    - "org.jdom2.input.sax.SAXHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.XMLReader].setContentHandler(org.xml.sax.ContentHandler)"
    - "[org.xml.sax.XMLReader].setEntityResolver(org.xml.sax.EntityResolver)"
    - "[org.xml.sax.XMLReader].setDTDHandler(org.xml.sax.DTDHandler)"
    - "[org.xml.sax.XMLReader].setErrorHandler(org.xml.sax.ErrorHandler)"
    - "[org.jdom2.input.sax.BuilderErrorHandler].<init>()"
    - "[org.xml.sax.XMLReader].setProperty(java.lang.String,java.lang.Object)"
    - "[java.util.HashMap].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.Boolean].booleanValue()"
    - "[org.jdom2.input.SAXBuilder].internalSetFeature(org.xml.sax.XMLReader,java.lang.String,boolean,java.lang.String)"
    - "[org.jdom2.input.SAXBuilder].internalSetProperty(org.xml.sax.XMLReader,java.lang.String,java.lang.Object,java.lang.String)"
    - "[org.xml.sax.XMLReader].getFeature(java.lang.String)"
    - "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:933"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:937"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:936"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:937"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:940"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:939"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:943"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:946"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:945"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:962"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:974"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:975"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:980"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:979"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:980"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:992"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:991"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:992"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:996"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:995"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:999"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1010"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:931,1"
      Dst: "[org.xml.sax.XMLReader].setContentHandler(org.xml.sax.ContentHandler)"
    - Src: "org.jdom2.input.SAXBuilder:934,1"
      Dst: "[org.xml.sax.XMLReader].setEntityResolver(org.xml.sax.EntityResolver)"
    - Src: "org.jdom2.input.SAXBuilder:938,1"
      Dst: "[org.xml.sax.XMLReader].setDTDHandler(org.xml.sax.DTDHandler)"
    - Src: "org.jdom2.input.SAXBuilder:944,1"
      Dst: "[org.xml.sax.XMLReader].setErrorHandler(org.xml.sax.ErrorHandler)"
    - Src: "org.jdom2.input.SAXBuilder:946,1"
      Dst: "[org.jdom2.input.sax.BuilderErrorHandler].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:952,1"
      Dst: "[org.xml.sax.XMLReader].setProperty(java.lang.String,java.lang.Object)"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.HashMap].entrySet()"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.input.SAXBuilder:975,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "org.jdom2.input.SAXBuilder:976,1"
      Dst: "[org.jdom2.input.SAXBuilder].internalSetFeature(org.xml.sax.XMLReader,java.lang.String,boolean,java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:981,1"
      Dst: "[org.jdom2.input.SAXBuilder].internalSetProperty(org.xml.sax.XMLReader,java.lang.String,java.lang.Object,java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:992,1"
      Dst: "[org.xml.sax.XMLReader].getFeature(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:993,1"
      Dst: "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 30
  - functionName: "[org.jdom2.input.SAXBuilder].internalSetFeature(org.xml.sax.XMLReader,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.xml.sax.XMLReader"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1020,1"
      Dst: "[org.xml.sax.XMLReader].setFeature(java.lang.String,boolean)"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.SAXBuilder:1022,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].internalSetProperty(org.xml.sax.XMLReader,java.lang.String,java.lang.Object,java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.xml.sax.XMLReader"
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.XMLReader].setProperty(java.lang.String,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()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1039,1"
      Dst: "[org.xml.sax.XMLReader].setProperty(java.lang.String,java.lang.Object)"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.SAXBuilder:1041,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.jdom2.input.SAXBuilder].build(org.xml.sax.InputSource)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "org.xml.sax.InputSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(org.xml.sax.InputSource)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1067"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1065"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1064"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1067"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1065"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1064"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1065,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1065,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(org.xml.sax.InputSource)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.io.InputStream)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.io.InputStream)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1093"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1091"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1090"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1093"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1091"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1090"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1091,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1091,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.io.File)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.io.File)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1118"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1116"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1115"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1118"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1116"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1116,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1116,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.net.URL)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.net.URL)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1143"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1141"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1140"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1143"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1141"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1141,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1141,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.io.InputStream,java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.io.InputStream,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1170"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1168"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1167"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1170"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1168"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1168,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1168,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.io.InputStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.io.Reader)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.io.Reader)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1198"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1196"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1195"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1198"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1196"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1196,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1196,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.io.Reader,java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.io.Reader,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1229"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1227"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1226"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1229"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1227"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1226"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1227,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1227,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.io.Reader,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.SAXBuilder].getEngine()"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.SAXBuilder].buildEngine()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:900"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:904"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:903"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:904,1"
      Dst: "[org.jdom2.input.SAXBuilder].buildEngine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.SAXBuilder].build(java.lang.String)"
    functionSourceFile: "org.jdom2.input.SAXBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[org.jdom2.input.SAXBuilder].getEngine()"
    - "[org.jdom2.input.sax.SAXEngine].build(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - "[java.net.MalformedURLException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.SAXBuilder:1261"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1299"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1282"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1282"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1285"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1285"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.SAXBuilder:1299"
      Branch Sides:
      - BranchSide: "org.jdom2.input.SAXBuilder:1266"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.SAXBuilder:1265"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.SAXBuilder:1262,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1266,1"
      Dst: "[org.jdom2.input.SAXBuilder].getEngine()"
    - Src: "org.jdom2.input.SAXBuilder:1266,1"
      Dst: "[org.jdom2.input.sax.SAXEngine].build(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1280,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.input.SAXBuilder:1282,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.input.SAXBuilder:1282,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    - Src: "org.jdom2.input.SAXBuilder:1287,1"
      Dst: "[java.net.MalformedURLException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.SAXBuilder:1293,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: 20
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:21,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:23,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].put(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.DoubleKeyMap].createKeyMap(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DoubleKeyMap:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:30"
        BranchSideFuncs:
        - "createKeyMap(java.lang.Object)"
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:29"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:27,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:29,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].createKeyMap(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:30,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].createKeyMap(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:35,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:36,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].createKeyMap(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:35,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:36,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].get(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DoubleKeyMap:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:42,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    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: "org.locationtech.jtstest.function.DoubleKeyMap:49,1"
      Dst: "[java.util.Map].keySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].keySet(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.TreeSet].<init>()"
    - "[java.util.Map].keySet()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DoubleKeyMap:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:53,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:54,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:55,1"
      Dst: "[java.util.Map].keySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].values()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DoubleKeyMap:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:60,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:62,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTestSVG(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:35,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:32,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeStyles(java.lang.StringBuilder)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].defsMarkers()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTest(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:38,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeStyles(java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].defsMarkers()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:42,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:43,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:44,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:45,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTest(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:48,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeStyles(java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].style(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].styleClass(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].style(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].styleClass(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].style(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:61,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:66,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].defsMarkers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 1
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTest(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jtstest.test.Testable"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTitle(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeSvg(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeomText(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTitle(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeSvg(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:89,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeomText(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeomText(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jts.geom.Geometry].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elemAttr(java.lang.String,java.lang.String,java.lang.String[])"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:99,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elem(java.lang.String,java.lang.String[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlUtil].elemAttr(java.lang.String,java.lang.String,java.lang.String[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeTitle(int,org.locationtech.jtstest.test.Testable,java.lang.StringBuilder)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jtstest.test.Testable"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:104,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:107,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:106,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeSvg(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[org.locationtech.jtstest.test.Testable].getDescription()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:111,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].write(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Double].valueOf(double)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeometryWithClass(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:118,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:121,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:123,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:123,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:124,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:126,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:126,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeometryWithClass(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].sceneEnv(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:143,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].totalEnvelope(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:144,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:147,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].writeGeometryWithClass(java.lang.StringBuilder,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:153,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter].appendln(java.lang.StringBuilder,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlSvgTestWriter:155,1"
      Dst: "[org.locationtech.jtstest.util.io.SVGWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int,int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].<init>(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getIndex()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 47
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDimension()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 51
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].getDepthDelta()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 54
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeSourceInfo].toString()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].infoString(int,int,boolean,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeSourceInfo:63,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].infoString(int,int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].infoString(int,int,boolean,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimensionSymbol(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[org.locationtech.jts.operation.overlayng.Edge].ringRoleSymbol(int,boolean)"
    - "[java.lang.Integer].toString(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:315,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:316,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:317,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimensionSymbol(int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:317,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:318,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].ringRoleSymbol(int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:319,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:319,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].dimensionSymbol(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 706
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].ringRoleSymbol(int,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.Edge].hasAreaParent(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].ringRoleSymbol(boolean)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.Edge:323,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].hasAreaParent(int)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:323,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:323,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:323,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].ringRoleSymbol(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:323,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.operation.overlayng.Edge:323,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.Edge].hasAreaParent(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.Edge:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.Edge:327"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].ringRoleSymbol(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 696
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:697"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:696"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    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: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:35,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:36,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:37,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:38,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].getEnvelope()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:39,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:41,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].computeFacetSequences(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:52,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:54,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].addFacetSequences(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:79"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:73,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:80,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:81,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].access$000(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].addFacetSequences(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:27,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].addFacetSequences(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].addFacetSequences(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:79"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:73,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:80,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder:81,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.SimpleNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.SimpleNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleNoder:33,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SimpleNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.SimpleNoder"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 9
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleNoder:38,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:51,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SimpleNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.SimpleNoder"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.SimpleNoder].computeIntersects(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 17
    EdgeCount: 56
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SimpleNoder:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:51"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SimpleNoder:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:50"
        BranchSideFuncs:
        - "next()"
        - "computeIntersects(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleNoder:44,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SimpleNoder:44,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SimpleNoder:45,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SimpleNoder:48,1"
      Dst: "[org.locationtech.jts.noding.SimpleNoder].computeIntersects(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.SimpleNoder].computeIntersects(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.SimpleNoder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.IntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SimpleNoder:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SimpleNoder:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:54"
        BranchSideFuncs:
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleNoder:55,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SimpleNoder:59,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.SimpleNoder].computeIntersects(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.SimpleNoder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.IntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SimpleNoder:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SimpleNoder:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleNoder:54"
        BranchSideFuncs:
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleNoder:55,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SimpleNoder:59,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:83,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:84,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].avg(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:100,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].getInteriorPoint()"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].processPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:125,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].processPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:128,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:129,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:129,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].process(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].processPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].process()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getWidth()"
    - "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getInteriorPoint()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.InteriorPointArea:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.InteriorPointArea:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:142,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:143,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].process()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:144,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getWidth()"
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:147,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea$InteriorPointPolygon].getInteriorPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.InteriorPointArea].access$000(double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.InteriorPointArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.InteriorPointArea].avg(double,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.InteriorPointArea:72,1"
      Dst: "[org.locationtech.jts.algorithm.InteriorPointArea].avg(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RectangleLineIntersector].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.algorithm.RectangleLineIntersector"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 28
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:35,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:60,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:60,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:60,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:61,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:61,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RectangleLineIntersector].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RectangleLineIntersector"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    functionUses: 1
    ICount: 44
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RectangleLineIntersector:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RectangleLineIntersector:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:91"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:90"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.RectangleLineIntersector:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:98"
        BranchSideFuncs:
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.RectangleLineIntersector:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RectangleLineIntersector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RectangleLineIntersector:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:136"
        BranchSideFuncs:
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.RectangleLineIntersector:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RectangleLineIntersector:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:82,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:90,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:99,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:134,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RectangleLineIntersector:139,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18:228,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modePan()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modePan()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modePan()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:291,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:291,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:31"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:30"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PanTool:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:80,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].changedUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$1].save()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].save()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$000(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$002(org.locationtech.jtstest.testbuilder.CommandPanel,boolean)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$100(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel$1:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$1:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$000(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$002(org.locationtech.jtstest.testbuilder.CommandPanel,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$100(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$000(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$002(org.locationtech.jtstest.testbuilder.CommandPanel,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$100(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JTextArea"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    - "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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].update()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].getCommandName()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].getCommandName()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:281,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].getCommandName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:286,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].removeUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].insertUpdate(javax.swing.event.DocumentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.DocumentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel$1].save()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].save()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].save()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$000(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$002(org.locationtech.jtstest.testbuilder.CommandPanel,boolean)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$100(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel$1:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$1:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$000(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$002(org.locationtech.jtstest.testbuilder.CommandPanel,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$100(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$1].save()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$000(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$002(org.locationtech.jtstest.testbuilder.CommandPanel,boolean)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$100(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel$1:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$1:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$000(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$002(org.locationtech.jtstest.testbuilder.CommandPanel,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$100(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:101,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$1:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location].<init>(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location:134,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location].getCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location].getIndices()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseCreateNew()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseCreateNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseCreateNew()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:335,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:335,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:312,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:313,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineIndex].<init>()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineIndex"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:26,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineIndex].add(org.locationtech.jts.index.sweepline.SweepLineInterval)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.sweepline.SweepLineInterval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMin()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].<init>(double,org.locationtech.jts.index.sweepline.SweepLineEvent,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMax()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:36,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMin()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:36,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].<init>(double,org.locationtech.jts.index.sweepline.SweepLineEvent,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:37,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:38,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMin()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].<init>(double,org.locationtech.jts.index.sweepline.SweepLineEvent,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "org.locationtech.jts.index.sweepline.SweepLineEvent"
    - "org.locationtech.jts.index.sweepline.SweepLineInterval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:35"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineEvent:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMax()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineIndex].buildIndex()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].isDelete()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInsertEvent()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].setDeleteEventIndex(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:49,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:50,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:52,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:53,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isDelete()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:54,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInsertEvent()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:54,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].setDeleteEventIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isDelete()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:39"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInsertEvent()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].setDeleteEventIndex(int)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineIndex].computeOverlaps(org.locationtech.jts.index.sweepline.SweepLineOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.sweepline.SweepLineOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.sweepline.SweepLineIndex].buildIndex()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].getDeleteEventIndex()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    - "[org.locationtech.jts.index.sweepline.SweepLineIndex].processOverlaps(int,int,org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineOverlapAction)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:63,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineIndex].buildIndex()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:65,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:67,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:68,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:69,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getDeleteEventIndex()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:69,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:69,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineIndex].processOverlaps(int,int,org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineIndex].buildIndex()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].isDelete()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInsertEvent()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].setDeleteEventIndex(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:49,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:50,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:52,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:53,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isDelete()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:54,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInsertEvent()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:54,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].setDeleteEventIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineEvent:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineEvent:38"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getDeleteEventIndex()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineIndex].processOverlaps(int,int,org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.index.sweepline.SweepLineInterval"
    - "org.locationtech.jts.index.sweepline.SweepLineOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    - "[org.locationtech.jts.index.sweepline.SweepLineOverlapAction].overlap(org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:82,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:83,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:84,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:85,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineOverlapAction].overlap(org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineIndex].processOverlaps(int,int,org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.index.sweepline.SweepLineInterval"
    - "org.locationtech.jts.index.sweepline.SweepLineOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    - "[org.locationtech.jts.index.sweepline.SweepLineOverlapAction].overlap(org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineIndex:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineIndex:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:82,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:83,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:84,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineEvent].getInterval()"
    - Src: "org.locationtech.jts.index.sweepline.SweepLineIndex:85,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineOverlapAction].overlap(org.locationtech.jts.index.sweepline.SweepLineInterval,org.locationtech.jts.index.sweepline.SweepLineInterval)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$8].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$8:317,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].exchangeGeometry()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$8:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$8:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].exchangeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].exchangeGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].exchangeGeometry()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].exchangeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].exchangeGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:44,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:45,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].toSegmentStrings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeNodingValidator:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeNodingValidator:56"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeNodingValidator:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:52,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:52,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:53,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:54,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:54,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:54,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].toSegmentStrings(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:68,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].toSegmentStrings(java.util.Collection)"
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:68,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeNodingValidator"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeNodingValidator:80,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    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: "org.locationtech.jts.noding.BoundaryChainNoder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(java.util.Collection,java.util.HashSet,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].markBoundarySegments(java.util.HashSet)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].extractChains(org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Collection].size()"
    functionUses: 4
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:53,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:54,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:55,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(java.util.Collection,java.util.HashSet,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:56,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].markBoundarySegments(java.util.HashSet)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:57,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].extractChains(org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(java.util.Collection,java.util.HashSet,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Collection"
    - "java.util.HashSet"
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].<init>(org.locationtech.jts.noding.SegmentString)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:68"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(org.locationtech.jts.noding.SegmentString)"
        - "addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:63,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:63,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:64,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].<init>(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:66,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].<init>(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:109,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    - "java.util.HashSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:82"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:71,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:72,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:74,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:75,1"
      Dst: "[java.util.HashSet].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:76,1"
      Dst: "[java.util.HashSet].remove(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:79,1"
      Dst: "[java.util.HashSet].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$Segment"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$Segment:159,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$Segment:162,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].normalize()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].reverse()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:204,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:204,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].markBoundarySegments(java.util.HashSet)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.HashSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].markBoundary()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 9
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:88"
        BranchSideFuncs:
        - "markBoundary()"
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:85,1"
      Dst: "[java.util.HashSet].iterator()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:86,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].markBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].markBoundary()"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$Segment"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].setBoundarySegment(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$Segment:166,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].setBoundarySegment(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].setBoundarySegment(int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "void"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].extractChains(org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChains(java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:91,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:93,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChains(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChains(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainStart(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainEnd(int)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:121"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "findChainEnd(int)"
        - "createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:119,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainStart(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:120,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:122,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainEnd(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:123,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainStart(int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:140"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainEnd(int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:148"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 3
    returnType: "org.locationtech.jts.noding.SegmentString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:133"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "getData()"
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:132,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:132,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:134,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:134,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(java.util.Collection,java.util.HashSet,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Collection"
    - "java.util.HashSet"
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].<init>(org.locationtech.jts.noding.SegmentString)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:68"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(org.locationtech.jts.noding.SegmentString)"
        - "addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:63,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:63,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:64,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].<init>(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:66,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].addSegments(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,java.util.HashSet)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    - "java.util.HashSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:82"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:71,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:72,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:74,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:75,1"
      Dst: "[java.util.HashSet].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:76,1"
      Dst: "[java.util.HashSet].remove(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:79,1"
      Dst: "[java.util.HashSet].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].markBoundarySegments(java.util.HashSet)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.HashSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].markBoundary()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 9
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:88"
        BranchSideFuncs:
        - "markBoundary()"
        - "hasNext()"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:85,1"
      Dst: "[java.util.HashSet].iterator()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:86,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].markBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].extractChains(org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[])"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChains(java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:91,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder:93,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChains(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsOp].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:37,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].<init>(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].intersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:59,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:60,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:60,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:154,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:155,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:52,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBits].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:110,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:113,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBits].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBits"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBits:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:69,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBits].getCommon()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:125,1"
      Dst: "[org.locationtech.jts.precision.CommonBits].getCommon()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter:126,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 2
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:88,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:91,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$Translater"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$Translater:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsOp:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:126,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:105,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:106,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:71,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:72,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:72,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:154,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:155,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsOp:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:126,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].difference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:83,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:84,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:154,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:155,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsOp:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:126,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].symDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].symDifference(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:96,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].symDifference(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:97,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:154,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:155,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsOp:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:126,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].buffer(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:109,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:110,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:110,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:138,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:139,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:140,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:140,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:52,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:69,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 2
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:88,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:91,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsOp:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:126,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].computeResultPrecision(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsOp:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsOp:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:126,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:138,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:139,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:140,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:140,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsOp].removeCommonBits(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsOp:154,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:155,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.precision.CommonBitsOp:158,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelope()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:64,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:67,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:80,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:93,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:96,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:96,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setEditGeomIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].isReadOnly()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].clear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometryType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryType(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setReadOnly(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(org.locationtech.jts.geom.Geometry,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:132,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:132,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:132,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:145,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:148,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getText(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:145,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:148,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].exchangeGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].clear(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].save(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:229,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].save(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].clear()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undo()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:250,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:250,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:255,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:28,1"
      Dst: "[java.util.Vector].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].peek()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:32,1"
      Dst: "[java.util.Stack].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].isEmpty()"
    - "[java.util.Stack].pop()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:36,1"
      Dst: "[java.util.Vector].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:37,1"
      Dst: "[java.util.Stack].pop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].addComponent(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometryType()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getRing(java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPolygonRing(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addLineString(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:271,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:271,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getRing(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:271,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPolygonRing(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:274,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:275,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addLineString(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:278,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:84"
        BranchSideFuncs:
        - "model()"
        - "getGeometryFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometryType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getRing(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.Coordinate].clone()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:287,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:288,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:289,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:290,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:291,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:291,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:293,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].clone()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 398
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:399,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.geom.Coordinate:403,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPolygonRing(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].findPolygonContaining(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addHole(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].replace(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:40,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].findPolygonContaining(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addHole(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].replace(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addLineString(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:62,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].addPoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:68,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryCombiner:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getRing(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.Coordinate].clone()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:287,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:288,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:289,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:290,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:291,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:291,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:293,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].findAdjacentVertices(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].findVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:299,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:301,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].findVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].findVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].getVertices(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:37,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].getVertices(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].getVertices(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].getVertices()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].getVertices()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter:60,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].getVertices()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].locateNonVertexPoint(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateNonVertexPoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:317,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateNonVertexPoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateNonVertexPoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].getLocation(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:35"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].getLocation(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].getLocation(org.locationtech.jts.geom.Coordinate,boolean,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].<init>(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getCoordinate()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getIndex()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isVertex()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getComponent()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,boolean,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].<init>(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getCoordinate()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,boolean,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].<init>(org.locationtech.jts.geom.Coordinate,boolean,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter:99,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].locateVertex(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateVertex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:336"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateVertex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateVertex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].getLocation(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].getLocation(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:45,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].getLocation(org.locationtech.jts.geom.Coordinate,boolean,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].<init>(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getCoordinate()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getIndex()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isVertex()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getComponent()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,boolean,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].<init>(org.locationtech.jts.geom.Coordinate,boolean,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getCoordinate()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,boolean,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:341,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:343,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].locateVertexPt(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].locateVertex(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:350"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:349"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:352"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:351"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:350,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].locateVertex(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:352,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].locateVertex(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateVertex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:336"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater].locateVertex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].moveVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover].move(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:357,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:357,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover].move(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover].move(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover$MoveVertexOperation].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover:24,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover:25,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover$MoveVertexOperation].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover:26,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover$MoveVertexOperation].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover$MoveVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexMover$MoveVertexOperation:36,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].removeGeometryListener(org.locationtech.jtstest.testbuilder.model.GeometryListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.Vector].clone()"
    - "[java.util.Vector].removeElement(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:373"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:373"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:369,1"
      Dst: "[java.util.Vector].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:370,1"
      Dst: "[java.util.Vector].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:371,1"
      Dst: "[java.util.Vector].removeElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].addGeometryListener(org.locationtech.jtstest.testbuilder.model.GeometryListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>(int)"
    - "[java.util.Vector].clone()"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:377"
      Branch Sides: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:377,1"
      Dst: "[java.util.Vector].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:378,1"
      Dst: "[java.util.Vector].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:379,1"
      Dst: "[java.util.Vector].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:380,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].elementAt(int)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryListener].geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:386"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:388,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:390,1"
      Dst: "[java.util.Vector].elementAt(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:390,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryListener].geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$4].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$4:120,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$4].itemStateChanged(java.awt.event.ItemEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ItemEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ItemEvent].getStateChange()"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ValidPanel$4:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel$4:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ValidPanel$4:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$4:123,1"
      Dst: "[java.awt.event.ItemEvent].getStateChange()"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$4:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:266,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    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: "org.locationtech.jtstest.function.LineHandlingFunctions:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].mergeLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineMerger].<init>()"
    - "[org.locationtech.jts.operation.linemerge.LineMerger].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineMerger].getMergedLineStrings()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:31,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].<init>()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:32,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:33,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].getMergedLineStrings()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:34,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:34,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:51,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:30,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineMerger$1].<init>(org.locationtech.jts.operation.linemerge.LineMerger)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:72,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger$1].<init>(org.locationtech.jts.operation.linemerge.LineMerger)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:72,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger$1].<init>(org.locationtech.jts.operation.linemerge.LineMerger)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineMerger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger$1:72,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].getMergedLineStrings()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineMerger].merge()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:174,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].merge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].merge()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(java.util.Iterator,boolean)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].edgeIterator()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForObviousStartNodes()"
    - "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForIsolatedLoops()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.linemerge.EdgeString].toLineString()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:109,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:109,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(java.util.Iterator,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:110,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].edgeIterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:112,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:113,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForObviousStartNodes()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:114,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForIsolatedLoops()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:116,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:116,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:117,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:118,1"
      Dst: "[org.locationtech.jts.operation.linemerge.EdgeString].toLineString()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:118,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForObviousStartNodes()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForNonDegree2Nodes()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:123,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForNonDegree2Nodes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForNonDegree2Nodes()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].getNodes()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    - "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsStartingAt(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:141,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:141,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:141,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:142,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:143,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:144,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsStartingAt(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:145,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.planargraph.Node].getDegree()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getDegree()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Node:88,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getDegree()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsStartingAt(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringStartingWith(org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge)"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:150,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:150,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:150,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:151,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:152,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:152,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:153,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringStartingWith(org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:153,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].iterator()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:61,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:62,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringStartingWith(org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.operation.linemerge.EdgeString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.EdgeString].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.linemerge.EdgeString].add(org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].getNext()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:158,1"
      Dst: "[org.locationtech.jts.operation.linemerge.EdgeString].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:161,1"
      Dst: "[org.locationtech.jts.operation.linemerge.EdgeString].add(org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:162,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:162,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:163,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].getNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].add(org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:47,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].getNext()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:48,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:48,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:51,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:51,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:51,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:51,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge:54,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:86,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForIsolatedLoops()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForUnprocessedNodes()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:127,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForUnprocessedNodes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsForUnprocessedNodes()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMerger"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].getNodes()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.planargraph.Node].getDegree()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsStartingAt(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMerger:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMerger:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:131,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:131,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:131,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:132,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:133,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:134,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getDegree()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:134,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:135,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMerger].buildEdgeStringsStartingAt(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMerger:136,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].toLineString()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.EdgeString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:80,1"
      Dst: "[org.locationtech.jts.operation.linemerge.EdgeString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:54,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:55,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:55,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:56,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:57,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:63,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:63,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:64,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:63,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:67,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:69,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:483"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].sequenceLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].sequence(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:39,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].sequence(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineSequencer].sequence(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineSequencer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].<init>()"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer].getSequencedLineStrings()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:83,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:84,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.linemerge.LineSequencer:85,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineSequencer].getSequencedLineStrings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].extractLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].extractSegments(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:49,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:50,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:51,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:51,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:52,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:53,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:55,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:57,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:60,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].extractChains(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jtstest.function.LineHandlingFunctions].extractChain(org.locationtech.jts.geom.LineString,int,int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:64,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:65,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:66,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:66,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:67,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:68,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:69,1"
      Dst: "[org.locationtech.jtstest.function.LineHandlingFunctions].extractChain(org.locationtech.jts.geom.LineString,int,int)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].extractChain(org.locationtech.jts.geom.LineString,int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].extractChain(org.locationtech.jts.geom.LineString,int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.LineHandlingFunctions:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LineHandlingFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.LineHandlingFunctions].dissolve(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LineHandlingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LineHandlingFunctions:90,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.LineDissolver].dissolve(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.dissolve.LineDissolver"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.LineDissolver].<init>()"
    - "[org.locationtech.jts.dissolve.LineDissolver].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.dissolve.LineDissolver].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.LineDissolver:66,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].<init>()"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:67,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.dissolve.LineDissolver:68,1"
      Dst: "[org.locationtech.jts.dissolve.LineDissolver].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.ItemBoundable:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].getBounds()"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 34
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].<init>(java.util.Map)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:117,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].createCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.TaggedLineString].getResultCoordinates()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:130"
        BranchSideFuncs:
        - "getResultCoordinates()"
        - "createCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:129"
        BranchSideFuncs:
        - "transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:123,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:126,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:127,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getResultCoordinates()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:127,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].createCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:130,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getResultCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:53,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:128,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].createCoordinateSequence(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:147,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:147,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].copy(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:174,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].copy(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13:144,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionDeleteAllTestCases()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$13:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionDeleteAllTestCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionDeleteAllTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:377,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:377,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:378,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:466,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:468,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.DefaultListModel].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestListPanel:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:159,1"
      Dst: "[javax.swing.DefaultListModel].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:163,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:164,1"
      Dst: "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.AttributeList$1].<init>()"
    functionSourceFile: "org.jdom2.AttributeList$1"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList$1:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList$1].compare(org.jdom2.Attribute,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getNamespacePrefix()"
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[org.jdom2.Attribute].getName()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList$1:95"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList$1:98"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList$1:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList$1:94,1"
      Dst: "[org.jdom2.Attribute].getNamespacePrefix()"
    - Src: "org.jdom2.AttributeList$1:94,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "org.jdom2.AttributeList$1:98,1"
      Dst: "[org.jdom2.Attribute].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Attribute].getNamespacePrefix()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:408,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getName()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 335
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.jdom2.AttributeList$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList$1].compare(org.jdom2.Attribute,org.jdom2.Attribute)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList$1:90,1"
      Dst: "[org.jdom2.AttributeList$1].compare(org.jdom2.Attribute,org.jdom2.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList$1].compare(org.jdom2.Attribute,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getNamespacePrefix()"
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[org.jdom2.Attribute].getName()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList$1:95"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList$1:98"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList$1:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList$1:94,1"
      Dst: "[org.jdom2.Attribute].getNamespacePrefix()"
    - Src: "org.jdom2.AttributeList$1:94,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "org.jdom2.AttributeList$1:98,1"
      Dst: "[org.jdom2.Attribute].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult].<init>()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.transform.sax.SAXResult].<init>()"
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].<init>(org.jdom2.transform.JDOMResult)"
    - "[javax.xml.transform.sax.SAXResult].setHandler(org.xml.sax.ContentHandler)"
    - "[javax.xml.transform.sax.SAXResult].setLexicalHandler(org.xml.sax.ext.LexicalHandler)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult:140,1"
      Dst: "[javax.xml.transform.sax.SAXResult].<init>()"
    - Src: "org.jdom2.transform.JDOMResult:142,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].<init>(org.jdom2.transform.JDOMResult)"
    - Src: "org.jdom2.transform.JDOMResult:145,1"
      Dst: "[javax.xml.transform.sax.SAXResult].setHandler(org.xml.sax.ContentHandler)"
    - Src: "org.jdom2.transform.JDOMResult:146,1"
      Dst: "[javax.xml.transform.sax.SAXResult].setLexicalHandler(org.xml.sax.ext.LexicalHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].getResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[org.jdom2.transform.JDOMResult].retrieveResult()"
    - "[org.jdom2.Document].getContent()"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].remove(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult:188"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:192"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:192"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:205"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:192"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:205"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:204"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:196"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult:183,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "org.jdom2.transform.JDOMResult:186,1"
      Dst: "[org.jdom2.transform.JDOMResult].retrieveResult()"
    - Src: "org.jdom2.transform.JDOMResult:193,1"
      Dst: "[org.jdom2.Document].getContent()"
    - Src: "org.jdom2.transform.JDOMResult:194,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.transform.JDOMResult:194,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.transform.JDOMResult:198,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "org.jdom2.transform.JDOMResult:199,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.transform.JDOMResult].retrieveResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.transform.sax.SAXResult].getHandler()"
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    - "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult:319"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:321"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:319"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[javax.xml.transform.sax.SAXResult].getHandler()"
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$FragmentHandler].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:448"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:450,1"
      Dst: "[org.jdom2.transform.JDOMResult$FragmentHandler].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$FragmentHandler].getResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$FragmentHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.transform.JDOMResult$FragmentHandler].getDetachedContent(org.jdom2.Element)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:388,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:391,1"
      Dst: "[org.jdom2.transform.JDOMResult$FragmentHandler].getDetachedContent(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Document].getContent()"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].hasRootElement()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:414"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:416"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:415"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:414,1"
      Dst: "[org.jdom2.Document].hasRootElement()"
    - Src: "org.jdom2.Document:415,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Document].hasRootElement()"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].indexOfFirstElement()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:207"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:207,1"
      Dst: "[org.jdom2.ContentList].indexOfFirstElement()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.ContentList].indexOfFirstElement()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 462
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:463"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:464"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:465"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:464"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:463"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.transform.JDOMResult].setDocument(org.jdom2.Document)"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Document"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].getDocument()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.jdom2.Document"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult].retrieveResult()"
    - "[org.jdom2.transform.JDOMResult].getFactory()"
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    - "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - "[org.jdom2.Document].setContent(java.util.Collection)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult:257"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:261"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:279"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:261"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:279"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:265"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult:255,1"
      Dst: "[org.jdom2.transform.JDOMResult].retrieveResult()"
    - Src: "org.jdom2.transform.JDOMResult:264,1"
      Dst: "[org.jdom2.transform.JDOMResult].getFactory()"
    - Src: "org.jdom2.transform.JDOMResult:265,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    - Src: "org.jdom2.transform.JDOMResult:267,1"
      Dst: "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - Src: "org.jdom2.transform.JDOMResult:268,1"
      Dst: "[org.jdom2.Document].setContent(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.jdom2.transform.JDOMResult].retrieveResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.transform.sax.SAXResult].getHandler()"
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    - "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult:319"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:321"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:319"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[javax.xml.transform.sax.SAXResult].getHandler()"
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.transform.JDOMResult].getFactory()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DefaultJDOMFactory].<init>()"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    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: "org.jdom2.DefaultJDOMFactory:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Document].setContent(java.util.Collection)"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].clearAndSet(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Document:504,1"
      Dst: "[org.jdom2.ContentList].clearAndSet(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].clearAndSet(java.util.Collection)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[org.jdom2.ContentList].clear()"
    - "[org.jdom2.ContentList].getModCount()"
    - "[org.jdom2.ContentList].getDataModCount()"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ContentList].addAll(int,java.util.Collection)"
    - "[org.jdom2.ContentList].setModCount(int,int)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:362"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:363"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:362"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:362"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:368"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:367"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:377"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:380"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:379"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:388"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:401"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:395"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:398"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:397"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:388"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:379"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:395"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:398"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:362,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.jdom2.ContentList:363,1"
      Dst: "[org.jdom2.ContentList].clear()"
    - Src: "org.jdom2.ContentList:370,1"
      Dst: "[org.jdom2.ContentList].getModCount()"
    - Src: "org.jdom2.ContentList:371,1"
      Dst: "[org.jdom2.ContentList].getDataModCount()"
    - Src: "org.jdom2.ContentList:378,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - Src: "org.jdom2.ContentList:385,1"
      Dst: "[org.jdom2.ContentList].addAll(int,java.util.Collection)"
    - Src: "org.jdom2.ContentList:398,1"
      Dst: "[org.jdom2.ContentList].setModCount(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[org.jdom2.ContentList].clear()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 342
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - "[org.jdom2.ContentList].incModCount()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:343"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:351"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:350"
        BranchSideFuncs:
        - "incModCount()"
    - Branch String: "org.jdom2.ContentList:344"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:346,1"
      Dst: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - Src: "org.jdom2.ContentList:351,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 510
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    - "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    - "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    - "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 3
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:511,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].incModCount()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 168
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].getModCount()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 157
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].getDataModCount()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 182
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].addAll(int,java.util.Collection)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - "[org.jdom2.ContentList$FilterList].isEmpty()"
    - "[org.jdom2.AttributeList].isEmpty()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.ContentList].add(int,org.jdom2.Content)"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.ContentList].ensureCapacity(int)"
    - "[org.jdom2.ContentList].getModCount()"
    - "[org.jdom2.ContentList].getDataModCount()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].remove(int)"
    - "[org.jdom2.ContentList].setModCount(int,int)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 53
    EdgeCount: 70
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:291"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:296"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:295"
        BranchSideFuncs:
        - "isEmpty()"
        - "checkIndex(int,boolean)"
    - Branch String: "org.jdom2.ContentList:298"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:303"
        BranchSideFuncs:
        - "getDataModCount()"
        - "isEmpty()"
        - "getModCount()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "checkIndex(int,boolean)"
        - "add(int,org.jdom2.Content)"
        - "ensureCapacity(int)"
        - "size()"
      - BranchSide: "org.jdom2.ContentList:302"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:304"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:310"
        BranchSideFuncs:
        - "getDataModCount()"
        - "isEmpty()"
        - "getModCount()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "checkIndex(int,boolean)"
        - "add(int,org.jdom2.Content)"
        - "ensureCapacity(int)"
        - "size()"
      - BranchSide: "org.jdom2.ContentList:309"
        BranchSideFuncs:
        - "getDataModCount()"
        - "getModCount()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "ensureCapacity(int)"
        - "size()"
    - Branch String: "org.jdom2.ContentList:319"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:325"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "add(int,org.jdom2.Content)"
      - BranchSide: "org.jdom2.ContentList:324"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:325"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:334"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:327"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:331"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.ContentList:330"
        BranchSideFuncs:
        - "setModCount(int,int)"
    - Branch String: "org.jdom2.ContentList:325"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:324"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:327"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:331"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.ContentList:330"
        BranchSideFuncs:
        - "setModCount(int,int)"
    Callsites:
    - Src: "org.jdom2.ContentList:292,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList:296,1"
      Dst: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - Src: "org.jdom2.ContentList:298,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.jdom2.ContentList:303,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.jdom2.ContentList:306,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.jdom2.ContentList:306,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.ContentList:306,1"
      Dst: "[org.jdom2.ContentList].add(int,org.jdom2.Content)"
    - Src: "org.jdom2.ContentList:310,1"
      Dst: "[org.jdom2.ContentList].size()"
    - Src: "org.jdom2.ContentList:310,1"
      Dst: "[org.jdom2.ContentList].ensureCapacity(int)"
    - Src: "org.jdom2.ContentList:312,1"
      Dst: "[org.jdom2.ContentList].getModCount()"
    - Src: "org.jdom2.ContentList:313,1"
      Dst: "[org.jdom2.ContentList].getDataModCount()"
    - Src: "org.jdom2.ContentList:319,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.ContentList:328,1"
      Dst: "[org.jdom2.ContentList].remove(int)"
    - Src: "org.jdom2.ContentList:331,1"
      Dst: "[org.jdom2.ContentList].setModCount(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 19
  - functionName: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    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.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:187"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:186"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:190"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:189"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:194"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.ContentList:190,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.ContentList].add(int,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Element].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Document].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    - "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    - "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    - "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ContentList].ensureCapacity(int)"
    - "[org.jdom2.ContentList].incModCount()"
    - "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 32
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:251"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:254"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:244,1"
      Dst: "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:246,1"
      Dst: "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:248,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - Src: "org.jdom2.ContentList:250,1"
      Dst: "[org.jdom2.ContentList].ensureCapacity(int)"
    - Src: "org.jdom2.ContentList:254,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.jdom2.ContentList:259,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 197
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Content"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - "[org.jdom2.Text].getParent()"
    - "[org.jdom2.DocType].getParent()"
    - "[org.jdom2.EntityRef].getParent()"
    - "[org.jdom2.Content].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,java.lang.String)"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Element].isAncestor(org.jdom2.Element)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 48
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:198"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:202"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:201"
        BranchSideFuncs:
        - "checkIndex(int,boolean)"
    - Branch String: "org.jdom2.ContentList:204"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:215"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:207"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:211"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,java.lang.String)"
      - BranchSide: "org.jdom2.ContentList:210"
        BranchSideFuncs:
        - "getQualifiedName()"
    - Branch String: "org.jdom2.ContentList:216"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:222"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:221"
        BranchSideFuncs:
        - "isAncestor(org.jdom2.Element)"
    - Branch String: "org.jdom2.ContentList:222"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:227"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:222"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:227"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:222"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:199,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList:202,1"
      Dst: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - Src: "org.jdom2.ContentList:204,1"
      Dst: "[org.jdom2.Content].getParent()"
    - Src: "org.jdom2.ContentList:208,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,java.lang.String)"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.ContentList:211,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.ContentList:222,1"
      Dst: "[org.jdom2.Element].isAncestor(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.jdom2.ContentList].ensureCapacity(int)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 412
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:413"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:416"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:415"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:416"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:424"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:423"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    - Branch String: "org.jdom2.ContentList:425"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:424"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
      - BranchSide: "org.jdom2.ContentList:423"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "org.jdom2.ContentList:414,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.jdom2.ContentList:425,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.jdom2.ContentList].size()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 554
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 83
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].remove(int)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 498
    functionDepth: 1
    returnType: "org.jdom2.Content"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - "[org.jdom2.ContentList].incModCount()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:499,1"
      Dst: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - Src: "org.jdom2.ContentList:502,1"
      Dst: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - Src: "org.jdom2.ContentList:503,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.jdom2.ContentList:505,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].setModCount(int,int)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].setFactory(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].getFactory()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].retrieveResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.transform.sax.SAXResult].getHandler()"
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    - "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult:319"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:321"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMResult:319"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult:322"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[javax.xml.transform.sax.SAXResult].getHandler()"
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    - Src: "org.jdom2.transform.JDOMResult:320,1"
      Dst: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.transform.JDOMResult].setHandler(org.xml.sax.ContentHandler)"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.ContentHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].setLexicalHandler(org.xml.sax.ext.LexicalHandler)"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.ext.LexicalHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    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: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].gray(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].<init>(int,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:24,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[java.awt.Color].getHSBColor(float,float,float)"
    - "[java.awt.Color].getAlpha()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:49,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:50,1"
      Dst: "[java.awt.Color].getHSBColor(float,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].getAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].darker(java.awt.Color,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:39,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:40,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:41,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:42,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].lighter(java.awt.Color,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[java.awt.Color].getHSBColor(float,float,float)"
    - "[java.awt.Color].getAlpha()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:48,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:49,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:50,1"
      Dst: "[java.awt.Color].getHSBColor(float,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].getAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:51,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].saturate(java.awt.Color,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[java.awt.Color].getHSBColor(float,float,float)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:57,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:58,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:59,1"
      Dst: "[java.awt.Color].getHSBColor(float,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getHue(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getSaturation(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getBrightness(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].depthDelta(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:68,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].<init>(org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:94,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:83,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].setWorkingPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].setNoder(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].setInvertOrientation(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].buffer(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].<init>(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].setInvertOrientation(boolean)"
    - "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].getCurves()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].createEmptyResultGeometry()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 47
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:139"
        BranchSideFuncs:
        - "getPrecisionModel()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:138"
        BranchSideFuncs:
        - "getFactory()"
        - "<init>(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
        - "getCurves()"
        - "setInvertOrientation(boolean)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:167"
        BranchSideFuncs:
        - "addEdges(java.util.List)"
        - "<init>(org.locationtech.jts.geom.GeometryFactory)"
        - "createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
        - "getPolygons()"
        - "getEdges()"
        - "computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
        - "<init>(org.locationtech.jts.geomgraph.NodeFactory)"
        - "<init>()"
        - "buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:183"
        BranchSideFuncs:
        - "createEmptyResultGeometry()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:182"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:141,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].<init>(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:142,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].setInvertOrientation(boolean)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:144,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferCurveSetBuilder].getCurves()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:147,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:148,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].createEmptyResultGeometry()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:168,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:170,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:170,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:171,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:171,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:173,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:174,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:175,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:176,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:183,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].getNoder(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:191"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.algorithm.LineIntersector)"
        - "setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
        - "<init>()"
        - "setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:192,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:193,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:194,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:195,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:195,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].computeNodedEdges(java.util.List,org.locationtech.jts.geom.PrecisionModel,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 205
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].getNoder(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SimpleNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.IteratedNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ValidatingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ScaledNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SimpleNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ScaledNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.IteratedNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ValidatingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 34
    EdgeCount: 70
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:218"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "checkValid()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:217"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:234"
        BranchSideFuncs:
        - "next()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:228"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
        - "getData()"
        - "getCoordinates()"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:228"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
        - "insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
        - "getData()"
        - "getCoordinates()"
        - "<init>(org.locationtech.jts.geomgraph.Label)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:206,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].getNoder(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:207,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:208,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:211,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:212,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:218,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:218,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:219,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:225,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:226,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:229,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:230,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:230,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:231,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].flip()"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.operation.buffer.BufferBuilder].depthDelta(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    - "[org.locationtech.jts.geomgraph.Edge].setDepthDelta(int)"
    - "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    functionUses: 1
    ICount: 26
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:270"
        BranchSideFuncs:
        - "isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:269"
        BranchSideFuncs:
        - "depthDelta(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "add(org.locationtech.jts.geomgraph.Edge)"
        - "setDepthDelta(int)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:259"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "flip()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:258"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "getDepthDelta()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:246,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:250,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:255,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:256,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:257,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].flip()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:259,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:262,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferBuilder].depthDelta(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:263,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:265,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].setDepthDelta(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:270,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].createSubgraphs(org.locationtech.jts.geomgraph.PlanarGraph)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.PlanarGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].isVisited()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].<init>()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].create(org.locationtech.jts.geomgraph.Node)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].reverseOrder()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    functionUses: 1
    ICount: 20
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:292"
        BranchSideFuncs:
        - "next()"
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:285"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geomgraph.Node)"
        - "<init>()"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:277,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:278,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:278,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:278,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:279,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:280,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].isVisited()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:281,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:282,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].create(org.locationtech.jts.geomgraph.Node)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:283,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:292,1"
      Dst: "[java.util.Collections].reverseOrder()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:292,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].buildSubgraphs(java.util.List,org.locationtech.jts.operation.overlay.PolygonBuilder)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.operation.overlay.PolygonBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getRightmostCoordinate()"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].<init>(java.util.List)"
    - "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].getDepth(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepth(int)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].findResultEdges()"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getDirectedEdges()"
    - "[org.locationtech.jts.operation.buffer.BufferSubgraph].getNodes()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 22
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:327"
        BranchSideFuncs:
        - "getRightmostCoordinate()"
        - "getDirectedEdges()"
        - "computeDepth(int)"
        - "getDepth(org.locationtech.jts.geom.Coordinate)"
        - "next()"
        - "getNodes()"
        - "findResultEdges()"
        - "add(java.util.Collection,java.util.Collection)"
        - "<init>(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:306,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:307,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:307,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:308,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:309,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getRightmostCoordinate()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:313,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:314,1"
      Dst: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater].getDepth(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:316,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].computeDepth(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:323,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].findResultEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:324,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getDirectedEdges()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferSubgraph].getNodes()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:325,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].convertSegStrings(java.util.Iterator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferBuilder:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferBuilder:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:331,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:332,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:333,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:334,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:335,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:335,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:336,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:338,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.operation.buffer.BufferBuilder].createEmptyResultGeometry()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferBuilder"
    linkageType: null
    functionLinenumber: 349
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferBuilder:350,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    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: "org.locationtech.jtstest.function.OverlayNGOptFunctions:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 320
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:320"
        BranchSideFuncs:
        - "isDisjoint()"
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:321,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 631
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[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: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:633,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:634,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:635,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:636,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:638,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 430
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:434"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:432,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:454,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 320
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:320"
        BranchSideFuncs:
        - "isDisjoint()"
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:321,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:454,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersectionOrigClassic(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:66,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersectionOrigPrep(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:81,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Polygonal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Lineal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Puntal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:65"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:61,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersectionOrigPrepNoCache(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:88,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:88,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:89,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:90,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:90,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Polygonal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Lineal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Puntal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:65"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:61,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersectionSR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:96,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:98,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:98,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:212,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersectionPrepSR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:103,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:104,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:105,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:105,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:106,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:106,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:212,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].difference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:110,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:112,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:52,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:116,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].fastCoversIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].createEmpty(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:40,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersectionPrep(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:130,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:131,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:132,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:133,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].intersectionPrepNoCache(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:137,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:137,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:138,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:139,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:140,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Polygonal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Lineal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Puntal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:65"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:61,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.OverlayNGOptFunctions].cacheFetch(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGOptFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGOptFunctions:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGOptFunctions:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGOptFunctions:150,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.Debug$SegmentFindingFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug$SegmentFindingFilter:226,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].hasSegment()"
    functionSourceFile: "org.locationtech.jts.util.Debug$SegmentFindingFilter"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.util.Debug$SegmentFindingFilter"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug$SegmentFindingFilter:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug$SegmentFindingFilter:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug$SegmentFindingFilter:235"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug$SegmentFindingFilter:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug$SegmentFindingFilter:237"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.util.Debug$SegmentFindingFilter:236"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.util.Debug$SegmentFindingFilter:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug$SegmentFindingFilter:237"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.util.Debug$SegmentFindingFilter:236"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.util.Debug$SegmentFindingFilter:236,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.util.Debug$SegmentFindingFilter:236,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isDone()"
    functionSourceFile: "org.locationtech.jts.util.Debug$SegmentFindingFilter"
    linkageType: null
    functionLinenumber: 241
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.util.Debug$SegmentFindingFilter"
    linkageType: null
    functionLinenumber: 246
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:41,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:42,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToBoundary()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfBoundary()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:55,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfBoundary()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:171,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:172,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:172,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:172,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:514"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:515,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToLongestEdge()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:59,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].longestSideLength(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:165,1"
      Dst: "[org.locationtech.jts.geom.Triangle].longestSideLength(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].longestSideLength(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:345"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Triangle:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:340,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:63,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:116,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:119,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:396,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isRemoved()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:75,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:504"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:503"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:503"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:503"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:504,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:514"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:515,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:84"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:84,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCCW()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:97,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:99,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:100,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndexCW()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:113,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].boundaryIndex()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:115,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:116,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isConnecting()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].adjacent2VertexIndex()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:131,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].adjacent2VertexIndex()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:132,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].adjacent2VertexIndex()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:142,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:514"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:515,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:560"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:559"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:561"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:567"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:558"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:557"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:558,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:560,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:562,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:565,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:495,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:476"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:475"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].adjacent2VertexIndex()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:142,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isolatedVertexIndex(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].degree(int,java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:158,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].degree(int,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].degree(int,java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:282,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:284,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:284,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:284,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:286,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].longestSideLength(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:165,1"
      Dst: "[org.locationtech.jts.geom.Triangle].longestSideLength(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfBoundary()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:171,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:172,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:172,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:172,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].compareTo(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getArea()"
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:197,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getArea()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:197,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getArea()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:663,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 394
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:396,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].isBoundaryTouch(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:210,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isBoundaryTouch(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isBoundaryTouch(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:218,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:219,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:221,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:587"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:588,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:560"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:559"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:561"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:567"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:558"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:557"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:558,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:560,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getIndex(org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:562,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:565,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isBoundaryTouch(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:218,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:219,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].prev(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:221,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].findTri(java.util.List,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.hull.HullTri"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:225,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:225,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:225,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isAllMarked(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:235"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:232,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:232,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:232,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:233,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].clearMarks(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:240,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:240,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:240,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:241,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].markConnected(org.locationtech.jts.algorithm.hull.HullTri,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].add(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:246,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:247,1"
      Dst: "[java.util.Deque].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:248,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:249,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:250,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:252,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:256,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:495,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isConnected(java.util.List,org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].clearMarks(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].findTri(java.util.List,org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].markConnected(org.locationtech.jts.algorithm.hull.HullTri,org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isAllMarked(java.util.List)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:272,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:273,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].clearMarks(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:274,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].findTri(java.util.List,org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:276,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].markConnected(org.locationtech.jts.algorithm.hull.HullTri,org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:277,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:278,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isAllMarked(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].clearMarks(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:240,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:240,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:240,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:241,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].findTri(java.util.List,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.hull.HullTri"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:225,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:225,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:225,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].markConnected(org.locationtech.jts.algorithm.hull.HullTri,org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.Deque].add(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].pop()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:246,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:247,1"
      Dst: "[java.util.Deque].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:248,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:249,1"
      Dst: "[java.util.Deque].pop()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:250,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:252,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:256,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setMarked(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isAllMarked(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:235"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:232,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:232,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:232,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:233,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isMarked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].compareTo(org.locationtech.jts.algorithm.hull.HullTri)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:34,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].compareTo(org.locationtech.jts.algorithm.hull.HullTri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].compareTo(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getArea()"
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:197,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getArea()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:197,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].buffer(org.locationtech.jts.geom.Geometry,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:55,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:57,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:58,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getLength()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:112,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:114,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:118,1"
      Dst: "[org.locationtech.jts.geom.LineString].getLength()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:119,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:171,1"
      Dst: "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Length"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 1
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Length:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Length:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Length:37"
        BranchSideFuncs:
        - "createCoordinate()"
    - Branch String: "org.locationtech.jts.algorithm.Length:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Length:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Length:34,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Length:40,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].createCoordinate()"
    - Src: "org.locationtech.jts.algorithm.Length:41,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Length:52,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:217,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:222,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:223,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.Geometry].union()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:233,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:235,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:241,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:243,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:249,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:252,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:253,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBufferOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:285,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBufferOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBufferOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].circle(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].reflect(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].addCap(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:295,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:305,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].circle(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:309,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].reflect(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:311,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:313,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].addCap(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:317,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:319,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:320,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[java.lang.Math].atan2(double,double)"
    - "[java.lang.Math].sqrt(double)"
    - "[java.lang.Math].asin(double)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:495"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:494"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:477,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:478,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:480,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:481,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:485,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:488,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:490,1"
      Dst: "[java.lang.Math].asin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:492,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:498,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:499,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:503,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:50,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:50,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].circle(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:349,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:351,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:352,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].snapTrig(double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:508,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:508,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:508,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].snapTrig(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:509,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:509,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:510,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].snapTrig(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:522"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:524"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:523"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:525"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:524,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].reflect(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].reflect(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:326,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:327,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].reflect(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:331,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].reflect(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - "[org.locationtech.jts.geom.Coordinate].setY(double)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:508,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.geom.LineSegment:509,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.geom.LineSegment:521,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.LineSegment:522,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - Src: "org.locationtech.jts.geom.LineSegment:523,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].addCap(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngleIndex(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngle(int)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:375"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:425"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:406"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:414"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:413"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:414"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:413"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:416"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:417"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:420"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:371,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:371,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:377,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:382,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngleIndex(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:385,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:390,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngle(int)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:391,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:403,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:414,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 4
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:78,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngleIndex(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngle(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].buffer(org.locationtech.jts.geom.Geometry,double,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double,double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:78,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:80,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:81,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getLength()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].indexAtLength(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].length(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:151,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:155,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:159,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:160,1"
      Dst: "[org.locationtech.jts.geom.LineString].getLength()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:161,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].indexAtLength(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:166,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].length(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:169,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:171,1"
      Dst: "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].indexAtLength(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:191,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].length(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:201,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:217,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:222,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:223,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.Geometry].union()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:233,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:235,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:241,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:243,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:249,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:252,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:253,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].buffer(org.locationtech.jts.geom.Geometry,double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:93,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:94,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:217,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:222,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:223,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.Geometry].union()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:233,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:235,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:241,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:243,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:249,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:252,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:253,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getLength()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:112,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:114,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:118,1"
      Dst: "[org.locationtech.jts.geom.LineString].getLength()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:119,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].interpolate(org.locationtech.jts.geom.LineString,double,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getLength()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].indexAtLength(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].length(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:151,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:155,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:159,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:160,1"
      Dst: "[org.locationtech.jts.geom.LineString].getLength()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:161,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].indexAtLength(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:166,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].length(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:169,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].indexAtLength(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:191,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].length(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:201,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].<init>(org.locationtech.jts.geom.Geometry,double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:217,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:222,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:223,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.Geometry].union()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:233,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:235,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:241,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:243,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:248,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:249,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:252,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:253,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBuffer(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBufferOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:285,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBufferOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].segmentBufferOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].circle(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].reflect(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].addCap(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:295,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:305,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].circle(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:309,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].reflect(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:311,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:313,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].addCap(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:317,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:319,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:320,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].reflect(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].reflect(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:326,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:327,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].reflect(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:331,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].circle(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:349,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:351,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:352,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].addCap(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngleIndex(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngle(int)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:375"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:425"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:406"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:414"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:413"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:414"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:413"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:416"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:417"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:420"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:371,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:371,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:377,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:382,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngleIndex(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:385,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:390,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngle(int)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:391,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:403,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:414,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngle(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].capAngleIndex(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[java.lang.Math].atan2(double,double)"
    - "[java.lang.Math].sqrt(double)"
    - "[java.lang.Math].asin(double)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:495"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:494"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:477,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].outerTangent(org.locationtech.jts.geom.Coordinate,double,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:478,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:480,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:481,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:485,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:488,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:490,1"
      Dst: "[java.lang.Math].asin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:492,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:498,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:499,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:503,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].projectPolar(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.operation.buffer.VariableBuffer].snapTrig(double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:508,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:508,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:508,1"
      Dst: "[org.locationtech.jts.operation.buffer.VariableBuffer].snapTrig(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:509,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:509,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:510,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.VariableBuffer].snapTrig(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.VariableBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:522"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:524"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:523"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.VariableBuffer:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:525"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.VariableBuffer:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.VariableBuffer:524,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].<init>(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].loadIndex()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:45,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].loadIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].loadIndex()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:50,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:53,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:55,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:55,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getLocator(int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 1
    returnType: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:63"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:68"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "<init>(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:61,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:65,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getNestedPoint()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].isNested()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 13
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getLocator(int)"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 39
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:107"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "hasNext()"
        - "iterator()"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:86"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:85"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:98"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:101"
        BranchSideFuncs:
        - "findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
        - "getLocator(int)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:86,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:88,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:90,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:90,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:92,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:99,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:102,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].getLocator(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:102,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon,org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:130"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "locate(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:142"
        BranchSideFuncs:
        - "findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:124,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:125,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:143,1"
      Dst: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.valid.IndexedNestedPolygonTester].findIncidentSegmentNestedPoint(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 1
    ICount: 24
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:166"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:179"
        BranchSideFuncs:
        - "covers(org.locationtech.jts.geom.Envelope)"
        - "getEnvelopeInternal()"
        - "getInteriorRingN(int)"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:178"
        BranchSideFuncs:
        - "getCoordinateN(int)"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
        BranchSideFuncs:
        - "isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:166"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:166"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:157,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:158,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:160,1"
      Dst: "[org.locationtech.jts.operation.valid.PolygonTopologyAnalyzer].isRingNested(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:167,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:168,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:169,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:169,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.valid.IndexedNestedPolygonTester:179,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex].buildIndex(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:35,1"
      Dst: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].buildIndex(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].buildIndex(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 5
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SegmentMCIndex:44"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
        - "next()"
        - "getEnvelope()"
      - BranchSide: "org.locationtech.jts.operation.buffer.SegmentMCIndex:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:39,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:40,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:42,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:42,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainBuilder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChainBuilder:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChainBuilder:55"
        BranchSideFuncs:
        - "findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
        - "<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:56,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:57,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainBuilder:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:137,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:159"
        BranchSideFuncs:
        - "expandBy(double)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:155,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].<init>(org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:48,1"
      Dst: "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].<init>(org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:48,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].<init>(org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex$1"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex$1:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:241,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$25].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:475,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$25].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].getSource()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2000(javax.swing.JComboBox)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setFillType(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:477,1"
      Dst: "[java.util.EventObject].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:478,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2000(javax.swing.JComboBox)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:479,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:479,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:479,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setFillType(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:480,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$25:480,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$2000(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getPaletteType(javax.swing.JComboBox)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getPaletteType(javax.swing.JComboBox)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setFillType(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 443
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "float[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:449"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:444,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:463"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:465"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:460,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:475,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:475,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 485
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getOrdinate(int)"
    - "[org.locationtech.jts.geom.CoordinateXY].getOrdinate(int)"
    functionUses: 1
    ICount: 43
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:491"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:500"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:499"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:490"
        BranchSideFuncs:
        - "getOrdinate(int)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:489"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:486,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:496,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 509
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:510,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getCoordinateInternal(int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 517
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.CoordinateXYM].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].<init>(double,double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 2
    ICount: 66
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:527"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:526"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:527"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:526"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:531"
        BranchSideFuncs:
        - "<init>(double,double,double)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:530"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:531"
        BranchSideFuncs:
        - "<init>(double,double,double)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:530"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:531"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:536"
        BranchSideFuncs:
        - "<init>(double,double,double,double)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:535"
        BranchSideFuncs:
        - "<init>(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:521,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXY].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:525,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:529,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYM].<init>(double,double,double)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:534,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].<init>(double,double,double,double)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:536,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:50,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYM].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYM"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYM:57,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:39,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getRawCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 552
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 58
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].clone()"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 561
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:562,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    - "[java.util.Arrays].copyOf(float[],int)"
    functionUses: 11
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:569,1"
      Dst: "[java.util.Arrays].copyOf(float[],int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:570,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 443
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "float[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:449"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:444,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].<init>(int,int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    - "[java.util.Arrays].copyOf(float[],int)"
    functionUses: 11
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:569,1"
      Dst: "[java.util.Arrays].copyOf(float[],int)"
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:570,1"
      Dst: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].<init>(float[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 579
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 32
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 586
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].expandEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 1
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:596"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:601"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:598"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:596"
        BranchSideFuncs:
        - "expandToInclude(double,double)"
      - BranchSide: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:595"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float:599,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 439
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 31
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:447"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:446"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:450"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:449"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:440,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].filterVertexLocations(java.util.Collection)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:52,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:52,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:53,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:60,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].getLocations(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:78,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Polygon,java.util.List)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[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.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:86,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:86,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:88,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Polygon,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:99,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:102,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Polygon,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:113,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:113,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:115,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:116,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:117,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:119,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:122,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findVertexLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findSegmentLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findVertexLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findSegmentLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findVertexLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:136,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:137,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:138,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:140,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:158,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160,1"
      Dst: "[java.util.Vector].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:162,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int[]"
    - "int"
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findSegmentLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:146,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:147,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:148,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:150,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:152,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:78,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Polygon,java.util.List)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[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.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:84,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:86,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:86,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:88,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Polygon,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:99,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:102,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:105,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Polygon,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:113,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:113,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:115,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:116,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:117,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:119,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:122,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findVertexLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findSegmentLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findVertexLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findSegmentLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findVertexLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:136,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:137,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:138,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:140,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findSegmentLocations(java.util.Stack,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.CoordinateSequence,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Stack"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:146,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:147,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:148,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:150,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:152,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].toIntArray(java.util.Vector)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.util.Vector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[java.util.Vector].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:158,1"
      Dst: "[java.util.Vector].size()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160,1"
      Dst: "[java.util.Vector].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:160,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:162,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    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: "org.locationtech.jtstest.function.PolygonizeFunctions:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:29,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:30,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:31,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:73,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:77,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.Polygonizer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:137,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:186,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:187,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:232,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:237,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:238,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:239,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:247,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:254,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:255,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:264,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].findNodesOfDegree(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Stack].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.Vector].isEmpty()"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteAllEdges(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegreeNonDeleted(org.locationtech.jts.planargraph.Node)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:377"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:376"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:400"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:399"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:391"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:390"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:369,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].findNodesOfDegree(int)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:370,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:372,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:373,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:373,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:374,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:374,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:377,1"
      Dst: "[java.util.Vector].isEmpty()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:378,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:380,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteAllEdges(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:381,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:381,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:385,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:386,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:391,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:392,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:392,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:394,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:396,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegreeNonDeleted(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteAllEdges(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:72,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:72,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:73,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:75,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:76,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.DirectedEdgeStar:86,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].sortEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Edge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegreeNonDeleted(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:47,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:47,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:49,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:49,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:50,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:51,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:248,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:254,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:255,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:255,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:256,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:257,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:259,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:261,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:262,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:266,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:267,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges(org.locationtech.jts.planargraph.Node)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:132,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:132,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:133,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:134,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:282,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:288,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:289,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:294,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:295,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].findDirEdgesInRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:235"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:222,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:225,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:225,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:226,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:227,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:228,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:230,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:231,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].findDirEdgesInRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:233,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].findDirEdgesInRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:87,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:88,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:89,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:90,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setLabel(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:275,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:275,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:276,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:277,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setLabel(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setLabel(long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].convertMaximalToMinimalEdgeRings(java.util.List)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findEdgeRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:193,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:195,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:196,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:197,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].convertMaximalToMinimalEdgeRings(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:200,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:201,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:201,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:202,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:203,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:204,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:206,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findEdgeRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].convertMaximalToMinimalEdgeRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findIntersectionNodes(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge,long)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCCWEdges(org.locationtech.jts.planargraph.Node,long)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:147,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:148,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findIntersectionNodes(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge,long)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:153,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCCWEdges(org.locationtech.jts.planargraph.Node,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findIntersectionNodes(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegree(org.locationtech.jts.planargraph.Node,long)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:170,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:171,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegree(org.locationtech.jts.planargraph.Node,long)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:173,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:174,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:179,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegree(org.locationtech.jts.planargraph.Node,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:58,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:58,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:60,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:60,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:61,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:62,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge:72"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCCWEdges(org.locationtech.jts.planargraph.Node,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:325"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:329"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:329"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:334"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:333"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:311,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:317,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:319,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:320,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:321,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:336,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:344,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 23
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findEdgeRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].build(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:351,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:352,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].build(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:114,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:97,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].build(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].add(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setRing(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:121,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].add(org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:122,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setRing(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:124,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:125,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].computeValid()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:273,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:273,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:273,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:274,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeValid()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:275,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:276,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeValid()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:216,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:221,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:222,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].isIncludedInvalid(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getLineString()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:356"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:344,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:344,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:350,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:351,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:351,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:351,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:352,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].isIncludedInvalid(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:353,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLineString()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:353,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:355,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator"
    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: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:490,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].isIncludedInvalid(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:384"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:377,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:378,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:382,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:382,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLineString()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:313,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:314,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].computeHole()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:284,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:286,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:286,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:286,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:287,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeHole()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:288,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:289,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:158,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:159,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:159,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].<init>(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:38,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:39,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].buildIndex()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:52,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].buildIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].buildIndex()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.HoleAssigner:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:56,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:57,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:57,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:58,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:58,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHoleToShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.HoleAssigner:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:69,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:70,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHoleToShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHoleToShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].findShellContaining(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].addHole(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.HoleAssigner:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:76,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].findShellContaining(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:78,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].addHole(org.locationtech.jts.operation.polygonize.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].findShellContaining(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].queryOverlappingShells(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].findEdgeRingContaining(org.locationtech.jts.operation.polygonize.EdgeRing,java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:103,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:104,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].queryOverlappingShells(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:105,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].findEdgeRingContaining(org.locationtech.jts.operation.polygonize.EdgeRing,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].queryOverlappingShells(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:84,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].findEdgeRingContaining(org.locationtech.jts.operation.polygonize.EdgeRing,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].contains(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:63,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:63,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:64,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].contains(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:66,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEnvelope()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:66,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].addHole(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:177,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:178,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:180,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:181,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator"
    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: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator:476,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findOuterShells(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].updateIncluded()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:303"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:296,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findOuterShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:301,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:301,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:301,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:302,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:304,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].updateIncluded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findOuterShells(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:320,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:320,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:320,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:321,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:322,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:323,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:418"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:423"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:418"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:414,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:419,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:420,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:421,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:421,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:422,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isOuterHole()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].updateIncluded()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getShell()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:439"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:432,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:433,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:434,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:435,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:435,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:435,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getShell()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:437,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:439,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:439,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getPolygon()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:395"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:394"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:390,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:391,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:391,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:391,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:392,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:393,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getPolygon()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:393,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getPolygon()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:193,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:195,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:198,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:35,1"
      Dst: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:29,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:30,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:31,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonizeValidPolygonal(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:39,1"
      Dst: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonize(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:29,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:30,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:31,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonizeDangles(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getDangles()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:44,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:45,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getDangles()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:47,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LineStringExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.LineStringExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.LineStringExtracter:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LineStringExtracter:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.LineStringExtracter:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.LineStringExtracter:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LineStringExtracter:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.LineStringExtracter:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:46,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.LineStringExtracter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.LineStringExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:83,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:95,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:73,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:77,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getDangles()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:201,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:232,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:237,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:238,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:239,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:247,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:254,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:255,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:264,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonizeCutEdges(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getCutEdges()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:52,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:53,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:54,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getCutEdges()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:55,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LineStringExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:95,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getCutEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:211,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:232,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:237,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:238,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:239,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:247,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:254,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:255,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:264,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonizeInvalidRingLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getInvalidRingLines()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:59,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:60,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:61,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:62,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getInvalidRingLines()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:63,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:63,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LineStringExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:95,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getInvalidRingLines()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:221,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:232,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:237,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:238,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:239,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:247,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:254,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:255,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:264,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.PolygonizeFunctions].polygonizeAllErrors(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PolygonizeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getDangles()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getCutEdges()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].getInvalidRingLines()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:67,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:68,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:69,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:70,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:71,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getDangles()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:71,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:72,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getCutEdges()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:73,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].getInvalidRingLines()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.PolygonizeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LineStringExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.LineStringExtracter:62,1"
      Dst: "[org.locationtech.jts.geom.util.LineStringExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:95,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getDangles()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:201,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getCutEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:211,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getInvalidRingLines()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:221,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].<init>(org.locationtech.jts.index.kdtree.KdNode,boolean)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame:360,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].getNode()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame"
    linkageType: null
    functionLinenumber: 365
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame].isXLevel()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree$QueryStackFrame"
    linkageType: null
    functionLinenumber: 369
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1:221,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].round(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1:225,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].round(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1:226,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].round(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 364
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:370"
        BranchSideFuncs:
        - "copy()"
        - "makePrecise(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:365,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:366,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:367,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayUtil:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:44"
        BranchSideFuncs:
        - "isFloating()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayUtil:43"
        BranchSideFuncs:
        - "isFloating()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:44,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].isFloating()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.CoverageUnion].<init>()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageUnion"
    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: "org.locationtech.jts.coverage.CoverageUnion:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageUnion].union(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageUnion:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageUnion:38"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageUnion:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageUnion:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.coverage.CoverageUnion:39,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageUnion:40,1"
      Dst: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.CoverageUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.CoverageUnion:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.CoverageUnion:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:69,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentExtractingNoder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.CoverageUnion:80,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil"
    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: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:17,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:20,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:20,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:20,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:21,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.awt.Graphics2D"
    - "java.lang.String"
    - "int"
    - "int"
    - "float"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[java.awt.geom.RectangularShape].getHeight()"
    - "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:34,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:34,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:34,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:35,1"
      Dst: "[java.awt.geom.RectangularShape].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:36,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.awt.Graphics2D"
    - "java.lang.String"
    - "int"
    - "int"
    - "float"
    - "float"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[java.awt.geom.RectangularShape].getHeight()"
    - "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:50,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:50,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:50,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:51,1"
      Dst: "[java.awt.geom.RectangularShape].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:62,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.CreateFractalShapeFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.CreateFractalShapeFunctions"
    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: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateFractalShapeFunctions].kochSnowflake(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateFractalShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].getGeometry()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:27,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:27,1"
      Dst: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:28,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:28,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:29,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:30,1"
      Dst: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:30,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:26,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].recursionLevelForSize(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].getBoundary(int,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:42,1"
      Dst: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].recursionLevelForSize(int)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:43,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:44,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:44,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:44,1"
      Dst: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].getBoundary(int,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:45,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].recursionLevelForSize(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:36,1"
      Dst: "[java.lang.Math].log(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].getBoundary(int,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSide(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:65,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:68,1"
      Dst: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSide(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:71,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:72,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSide(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSide(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:77,1"
      Dst: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:79,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:80,1"
      Dst: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:80,1"
      Dst: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:83,1"
      Dst: "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:91,1"
      Dst: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSide(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.fractal.KochSnowflakeBuilder].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.KochSnowflakeBuilder:100,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].create(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:67,1"
      Dst: "[org.locationtech.jts.math.Vector2D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].multiply(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:133,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].translate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:282,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector2D].rotateByQuarterCircle(int)"
    functionSourceFile: "org.locationtech.jts.math.Vector2D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.Vector2D"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector2D].create(double,double)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Vector2D:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:261"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Vector2D:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector2D:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector2D:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector2D:264,1"
      Dst: "[org.locationtech.jts.math.Vector2D].create(double,double)"
    - Src: "org.locationtech.jts.math.Vector2D:272,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateFractalShapeFunctions].sierpinskiCarpet(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateFractalShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getGeometry()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:34,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:34,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:35,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:35,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:36,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:37,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:32,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].recursionLevelForSize(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getDiameter()"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getHoles(int,double,double,double)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareExtent()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:44,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].recursionLevelForSize(int)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:45,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:46,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:47,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getDiameter()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:47,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getHoles(int,double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:48,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareExtent()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:48,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:49,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].recursionLevelForSize(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:38,1"
      Dst: "[java.lang.Math].log(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getHoles(int,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 4
    argTypes:
    - "int"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:55,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:57,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "double"
    - "double"
    - "double"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].createSquareHole(double,double,double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:67,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:79,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].createSquareHole(double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:79,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].createSquareHole(double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:135,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:136,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateFractalShapeFunctions].hilbertCurve(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateFractalShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:44,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:44,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:46,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:46,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:48,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:49,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:46,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].level(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - "[org.locationtech.jts.geom.LineSegment].minX()"
    - "[org.locationtech.jts.geom.LineSegment].minY()"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].maxOrdinate(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].decode(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].transform(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:63,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].level(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:64,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:70,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:71,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minX()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:72,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minY()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:73,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:74,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].maxOrdinate(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:80,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].decode(int,int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:81,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:81,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].transform(double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:82,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].level(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCode:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCode:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:90,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:92,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:65,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:66,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].minX()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:85,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].minY()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:101,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].maxOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:78,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:79,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].decode(int,int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].deinterleave(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].prefixScan(long)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:203,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:204,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].levelClamp(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:208,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].deinterleave(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:214,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].prefixScan(long)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].transform(double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateFractalShapeFunctions].hilbertCurveAtLevel(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateFractalShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].setLevel(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:56,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:56,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:58,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:58,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:60,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].setLevel(int)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:61,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:46,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].setLevel(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:59,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:65,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCode:66,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.HilbertCode].level(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - "[org.locationtech.jts.geom.LineSegment].minX()"
    - "[org.locationtech.jts.geom.LineSegment].minY()"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].maxOrdinate(int)"
    - "[org.locationtech.jts.shape.fractal.HilbertCode].decode(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].transform(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:63,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].level(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:64,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].size(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:70,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:71,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minX()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:72,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minY()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:73,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:74,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].maxOrdinate(int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:80,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCode].decode(int,int)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:81,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:81,1"
      Dst: "[org.locationtech.jts.shape.fractal.HilbertCurveBuilder].transform(double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:82,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.fractal.HilbertCurveBuilder:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.CreateFractalShapeFunctions].mortonCurve(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateFractalShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:68,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:68,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:70,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:72,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:73,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:45,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.MortonCode].level(int)"
    - "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - "[org.locationtech.jts.geom.LineSegment].minX()"
    - "[org.locationtech.jts.geom.LineSegment].minY()"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.shape.fractal.MortonCode].maxOrdinate(int)"
    - "[org.locationtech.jts.shape.fractal.MortonCode].decode(int)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].transform(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:65,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].level(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:66,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:72,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:73,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minX()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:74,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minY()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:75,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:76,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].maxOrdinate(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:82,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].decode(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:83,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].transform(double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:85,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCode].level(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.MortonCode:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCode:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCode:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:91,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:93,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.MortonCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:66,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:67,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCode].checkLevel(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCode"
    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: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.MortonCode:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCode:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCode:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].minX()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:85,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].minY()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:101,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCode].maxOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.MortonCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:79,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:80,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCode].decode(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.MortonCode].deinterleave(int)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:132,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].deinterleave(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:134,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCode].deinterleave(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].transform(double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateFractalShapeFunctions].mortonCurveAtLevel(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateFractalShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].setLevel(int)"
    - "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:80,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:80,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:82,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:82,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:85,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].setLevel(int)"
    - Src: "org.locationtech.jtstest.function.CreateFractalShapeFunctions:86,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:45,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].setLevel(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:60,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.MortonCode].checkLevel(int)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:66,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].checkLevel(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCode:67,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.MortonCurveBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.MortonCode].level(int)"
    - "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - "[org.locationtech.jts.geom.LineSegment].minX()"
    - "[org.locationtech.jts.geom.LineSegment].minY()"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.shape.fractal.MortonCode].maxOrdinate(int)"
    - "[org.locationtech.jts.shape.fractal.MortonCode].decode(int)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].transform(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:65,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].level(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:66,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].size(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:72,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:73,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minX()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:74,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minY()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:75,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:76,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].maxOrdinate(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:82,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCode].decode(int)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:83,1"
      Dst: "[org.locationtech.jts.shape.fractal.MortonCurveBuilder].transform(double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:85,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.fractal.MortonCurveBuilder:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].add(org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:47,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.linemerge.EdgeString:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.linemerge.EdgeString:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:54,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:55,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:55,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:56,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:57,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdgeDirection()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:63,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:63,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:64,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:63,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:67,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:69,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.linemerge.EdgeString].toLineString()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.EdgeString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.linemerge.EdgeString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:80,1"
      Dst: "[org.locationtech.jts.operation.linemerge.EdgeString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.EdgeString:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].<init>(boolean[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:98,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:95,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].addTouch(org.locationtech.jts.noding.SegmentString)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 4
    ICount: 34
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:107"
        BranchSideFuncs:
        - "getIntersectionNum()"
        - "getCoordinate(int)"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:129"
        BranchSideFuncs:
        - "addTouch(org.locationtech.jts.noding.SegmentString)"
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:124"
        BranchSideFuncs:
        - "isInteriorIntersection(int)"
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:129"
        BranchSideFuncs:
        - "addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:113,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:118,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:119,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].addTouch(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:121,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:122,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:123,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].addTouch(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.lang.Integer].intValue()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:132,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:132,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 5
    returnType: "org.locationtech.jts.noding.SegmentNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:217"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:216"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:216"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:217,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].add(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].addTouch(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    - "[java.lang.Integer].intValue()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:132,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder:132,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].computeQuadLevel(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Key:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:28"
        BranchSideFuncs:
        - "exponent(double)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:27"
        BranchSideFuncs:
        - "getWidth()"
        - "getHeight()"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.index.quadtree.Key:29,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.index.quadtree.Key:31,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.quadtree.Key].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.index.quadtree.Key].computeKey(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Key:36,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Key:43,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].computeKey(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].getPoint()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].getLevel()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 46
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].getCentre()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:53,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Key:53,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Key:54,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Key:54,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.quadtree.Key:54,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Key].computeKey(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Key].computeQuadLevel(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.index.quadtree.Key].computeKey(int,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Key:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:71"
        BranchSideFuncs:
        - "computeKey(int,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Key:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:63,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].computeQuadLevel(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Key:64,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Key:65,1"
      Dst: "[org.locationtech.jts.index.quadtree.Key].computeKey(int,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Key:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.quadtree.Key].computeKey(int,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Key"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Math].floor(double)"
    functionUses: 2
    ICount: 29
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Key:75,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    - Src: "org.locationtech.jts.index.quadtree.Key:76,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Key:76,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.index.quadtree.Key:77,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Key:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:112,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$100(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Polygon)"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:119"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:117,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$100(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$100(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 12
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionAreaPolygon(org.locationtech.jts.geom.Polygon)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:64,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].intersectionAreaPolygon(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.operation.overlayarea.OverlayArea$1)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    - "org.locationtech.jts.operation.overlayarea.OverlayArea$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter:112,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:319,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$12].stateChanged(javax.swing.event.ChangeEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.SpinnerNumberModel].getNumber()"
    - "[java.lang.Number].floatValue()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStrokeWidth(float)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:321,1"
      Dst: "[javax.swing.SpinnerNumberModel].getNumber()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:321,1"
      Dst: "[java.lang.Number].floatValue()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStrokeWidth(float)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:323,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:323,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$12:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.SpinnerNumberModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStrokeWidth(float)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13:193,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPolygon()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPolygon()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(java.util.Collection,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.LinearComponentExtracter:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:46,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:46,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:47,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:48,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.LinearComponentExtracter:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:82,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:85,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:170,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(java.util.Collection,java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "java.util.Collection"
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.LinearComponentExtracter:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:64,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:64,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:65,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:66,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:101,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:101,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:178,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.LinearComponentExtracter:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:82,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:85,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:101,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:101,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:131,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:132,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:145,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:145,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:145,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getGeometry(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:159,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:159,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:159,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:131,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:132,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:170,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].<init>(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:178,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].setForceToLineString(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 4
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.LinearComponentExtracter:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:202"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "getFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.LinearComponentExtracter:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:202"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "getFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.LinearComponentExtracter:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:206"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.LinearComponentExtracter:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:197,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:197,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:197,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:198,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.operation.union.UnionStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].union()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:99,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:100,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.operation.union.UnionStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:124,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].overlapEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractByEnvelope(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].unionFull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].isBorderSegmentsSame(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].combine(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:139,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].overlapEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:144,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:145,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:147,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:150,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:152,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractByEnvelope(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:156,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].unionFull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:159,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].isBorderSegmentsSame(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:167,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].combine(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].overlapEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:186,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 531
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 1
    ICount: 49
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:531"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Envelope)"
        - "<init>()"
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:531"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Envelope)"
        - "<init>()"
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:533"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:534"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:534"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:533"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:534"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:533"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:535"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:534"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:537"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:536"
        BranchSideFuncs:
        - "<init>(double,double,double,double)"
      - BranchSide: "org.locationtech.jts.geom.Envelope:535"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:532,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:532,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.geom.Envelope:532,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:538,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:61,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].createList(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:61,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:62,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].extractByEnvelope(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:202,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:203,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:204,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:205,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:205,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:206,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:209,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:213,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].unionFull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:218,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:222,1"
      Dst: "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].isBorderSegmentsSame(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].isEqual(java.util.List,java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:227,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:229,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:230,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:233,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].isEqual(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:255"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:252,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:253,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].<init>(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:276,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion$1].<init>(org.locationtech.jts.geom.Envelope,java.util.List)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:276,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion$1].<init>(org.locationtech.jts.geom.Envelope,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion$1:276,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].isEqual(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:237,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:240,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:242,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:242,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:242,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:243,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].combine(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine(java.util.Collection)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:191,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:194,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:195,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryCombiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.util.GeometryCombiner:49,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.union.UnionStrategy)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:121,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.union.UnionStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.operation.union.UnionStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:124,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].overlapEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractByEnvelope(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].unionFull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].isBorderSegmentsSame(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].combine(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:139,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].overlapEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:144,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:145,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:147,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:150,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:152,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractByEnvelope(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:156,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].unionFull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:159,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].isBorderSegmentsSame(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:167,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].combine(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].isUnionOptimized()"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].overlapEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:186,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersection(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].combine(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.GeometryCombiner].combine(java.util.Collection)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:191,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:194,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:195,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryCombiner].combine(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].extractByEnvelope(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:202,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:203,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:204,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:205,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:205,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:206,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:209,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:213,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].unionFull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:218,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:222,1"
      Dst: "[org.locationtech.jts.operation.union.UnionStrategy].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].isBorderSegmentsSame(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[org.locationtech.jts.operation.union.OverlapUnion].isEqual(java.util.List,java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:227,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:229,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:230,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:233,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].isEqual(java.util.List,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].isEqual(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:237,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:240,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:242,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:242,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:242,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:243,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:255"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:252,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:253,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].intersects(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:259"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:259"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:260,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 263
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:263"
        BranchSideFuncs:
        - "containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:263"
        BranchSideFuncs:
        - "containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:264,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 2
    ICount: 29
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:269"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:268"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-1"
        BranchSideFuncs:
        - "getX()"
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-1"
        BranchSideFuncs:
        - "getMaxY()"
        - "getY()"
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.OverlapUnion:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.OverlapUnion:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:268,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:269,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:269,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:270,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:271,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:271,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:272,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].extractBorderSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].<init>(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:276,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion$1].<init>(org.locationtech.jts.geom.Envelope,java.util.List)"
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:276,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].access$000(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].intersects(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:86,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].intersects(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.OverlapUnion].access$100(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.union.OverlapUnion"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.OverlapUnion:86,1"
      Dst: "[org.locationtech.jts.operation.union.OverlapUnion].containsProperly(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].linkResultDirectedEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:63"
        BranchSideFuncs:
        - "getEdges()"
        - "next()"
        - "linkResultDirectedEdges()"
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:59,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:60,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:61,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:61,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.NodeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:65,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:70,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:73,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:65,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:74,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:74,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:77,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].isBoundaryNode(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:84"
        BranchSideFuncs:
        - "getLabel()"
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:83"
        BranchSideFuncs:
        - "getLabel()"
        - "getLocation(int)"
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:82,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:84,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:85,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].insertEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:90,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:94,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:95,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:98,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].values()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:99,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].addNode(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geomgraph.Node)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:100,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geomgraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Node)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:66,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:66,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:68,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:71,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Label)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:81,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].addNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 7
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:101,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:108,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:94,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 19
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:131"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
        - "<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
        - "add(org.locationtech.jts.geomgraph.EdgeEnd)"
        - "setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:119,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:119,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:121,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:123,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].<init>(org.locationtech.jts.geomgraph.Edge,boolean)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:125,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setSym(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:128,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].linkResultDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:140,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:140,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:141,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:142,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:142,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeEndStar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 51
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:222"
        BranchSideFuncs:
        - "isArea()"
        - "getLabel()"
        - "getSym()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:215"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:227"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:226"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "isInResult()"
        - "setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:191,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:197,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:198,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:199,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:216,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:225,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:225,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:227,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].linkAllDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkAllDirectedEdges()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:152,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:153,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:154,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:154,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkAllDirectedEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeEndStar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkAllDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:276"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:267,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:272,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:273,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:274,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:276,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 138
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].findEdgeEnd(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geomgraph.EdgeEnd"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:171"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:167,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:167,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:167,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:168,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:169,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Edge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].findEdge(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:185,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:186,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:187,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:188,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].findEdgeInSameDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].matchInSameDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:204,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:205,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:207,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:208,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].matchInSameDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].matchInSameDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:224,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:227,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:228,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Quadrant"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    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()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Quadrant:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Quadrant:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Quadrant:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Quadrant:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Quadrant:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].matchInSameDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:224,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:227,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:228,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].printEdges(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.Edge].print(java.io.PrintStream)"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].print(java.io.PrintStream)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.PlanarGraph:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.PlanarGraph:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:235,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:236,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:237,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:237,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:237,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:237,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:238,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:239,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].print(java.io.PrintStream)"
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:240,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].print(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:290"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.Edge:287,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Edge:291,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.Edge:293,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.Edge:293,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersection].print(java.io.PrintStream)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeIntersectionList:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeIntersectionList:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:150,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:151,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:151,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:153,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersection].print(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersection].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].print(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:92,1"
      Dst: "[java.io.PrintStream].print(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:93,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:93,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:93,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:93,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:93,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:94,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersection:94,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Random].<init>(long)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:60,1"
      Dst: "[java.util.Random].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 192
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Random].nextInt(int)"
    functionUses: 196
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler:84,1"
      Dst: "[java.util.Random].nextInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1].<init>(org.locationtech.jtstest.testbuilder.PrecisionModelPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1:72,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].rbFixed_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel$1:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].rbFixed_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].rbFixed_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].updateDisplay()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:156,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].updateDisplay()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].updateDisplay()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].isFloatingSelected()"
    - "[javax.swing.JComponent].setEnabled(boolean)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelPanel].isFloatingSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:136,1"
      Dst: "[javax.swing.JComponent].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:137,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.PrecisionModelPanel:138,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15:159,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].precisionModel(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$15:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].precisionModel(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].precisionModel(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[org.locationtech.jtstest.testrunner.GuiUtil].center(java.awt.Component,java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[java.awt.Dialog].setVisible(boolean)"
    - "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].changePrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:149,1"
      Dst: "[org.locationtech.jtstest.testrunner.GuiUtil].center(java.awt.Component,java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:151,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.PrecisionModelDialog].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].changePrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.XMLReaderSchemaFactory].<init>(javax.xml.validation.Schema)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderSchemaFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.xml.validation.Schema"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - "[org.jdom2.input.sax.AbstractReaderSchemaFactory].<init>(javax.xml.parsers.SAXParserFactory,javax.xml.validation.Schema)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaderSchemaFactory:87,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - Src: "org.jdom2.input.sax.XMLReaderSchemaFactory:87,1"
      Dst: "[org.jdom2.input.sax.AbstractReaderSchemaFactory].<init>(javax.xml.parsers.SAXParserFactory,javax.xml.validation.Schema)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaderSchemaFactory].<init>(java.lang.String,java.lang.ClassLoader,javax.xml.validation.Schema)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderSchemaFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "javax.xml.validation.Schema"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.parsers.SAXParserFactory].newInstance(java.lang.String,java.lang.ClassLoader)"
    - "[org.jdom2.input.sax.AbstractReaderSchemaFactory].<init>(javax.xml.parsers.SAXParserFactory,javax.xml.validation.Schema)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaderSchemaFactory:102,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newInstance(java.lang.String,java.lang.ClassLoader)"
    - Src: "org.jdom2.input.sax.XMLReaderSchemaFactory:102,1"
      Dst: "[org.jdom2.input.sax.AbstractReaderSchemaFactory].<init>(javax.xml.parsers.SAXParserFactory,javax.xml.validation.Schema)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$1].<init>(org.locationtech.jts.geom.prep.PreparedGeometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedGeometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$1:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$1].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$1:31,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders].values()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders:80,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders"
    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: "org.jdom2.input.sax.XMLReaders:80,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders].<init>(java.lang.String,int,int)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders:219,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders].getSupplier()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders$FactorySupplier"
    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.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.input.sax.XMLReaders].createXMLReader()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.xml.sax.XMLReader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaders].getSupplier()"
    - "[org.jdom2.input.sax.XMLReaders$FactorySupplier].supply()"
    - "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - "[javax.xml.parsers.SAXParser].getXMLReader()"
    - "[org.jdom2.JDOMException].<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: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders:246,1"
      Dst: "[org.jdom2.input.sax.XMLReaders].getSupplier()"
    - Src: "org.jdom2.input.sax.XMLReaders:247,1"
      Dst: "[org.jdom2.input.sax.XMLReaders$FactorySupplier].supply()"
    - Src: "org.jdom2.input.sax.XMLReaders:247,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - Src: "org.jdom2.input.sax.XMLReaders:247,1"
      Dst: "[javax.xml.parsers.SAXParser].getXMLReader()"
    - Src: "org.jdom2.input.sax.XMLReaders:249,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.jdom2.input.sax.XMLReaders:255,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.XMLReaders:255,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.XMLReaders:255,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.jdom2.input.sax.XMLReaders:255,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.jdom2.input.sax.XMLReaders].getSupplier()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders$FactorySupplier"
    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.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders].isValidating()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.XMLReaders].getSupplier()"
    - "[org.jdom2.input.sax.XMLReaders$FactorySupplier].validates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders:262,1"
      Dst: "[org.jdom2.input.sax.XMLReaders].getSupplier()"
    - Src: "org.jdom2.input.sax.XMLReaders:262,1"
      Dst: "[org.jdom2.input.sax.XMLReaders$FactorySupplier].validates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders].getSupplier()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders$FactorySupplier"
    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.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.sax.XMLReaders:232,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].isAdjacentSegments(int,int)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:28"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:29,1"
      Dst: "[java.lang.Math].abs(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].getLineIntersector()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.LineIntersector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].getProperIntersectionPoint()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].hasProperIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].hasProperInteriorIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].hasInteriorIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].isTrivialIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.noding.IntersectionAdder].isAdjacentSegments(int,int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.NodedSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 22
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:107"
        BranchSideFuncs:
        - "getIntersectionNum()"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:107"
        BranchSideFuncs:
        - "isAdjacentSegments(int,int)"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:97"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:107"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:98"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:95,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:96,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].isAdjacentSegments(int,int)"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:98,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:99,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].isAdjacentSegments(int,int)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:28"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:29,1"
      Dst: "[java.lang.Math].abs(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - "[org.locationtech.jts.noding.IntersectionAdder].isTrivialIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 4
    ICount: 50
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:124"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:123"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:124"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:123"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:142"
        BranchSideFuncs:
        - "isTrivialIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:156"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
        - "isProper()"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:125,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:130,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:132,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:135,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:143,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].isTrivialIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:145,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:147,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].isTrivialIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.noding.IntersectionAdder].isAdjacentSegments(int,int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.NodedSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 22
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:107"
        BranchSideFuncs:
        - "getIntersectionNum()"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:107"
        BranchSideFuncs:
        - "isAdjacentSegments(int,int)"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:97"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:107"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:98"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.IntersectionAdder:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.IntersectionAdder:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:95,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:96,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].isAdjacentSegments(int,int)"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:98,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].isClosed()"
    - Src: "org.locationtech.jts.noding.IntersectionAdder:99,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionUses: 8
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:163,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:164,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].isDone()"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:407,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isFullyOutside()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:423,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].isOutside()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:426"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getMaxDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getHSide()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getX()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].getY()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:455,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:397,1"
      Dst: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.LargestEmptyCircle$Cell:455,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeMerger].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeMerger"
    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: "org.locationtech.jts.operation.overlayng.EdgeMerger:49,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.EdgeMerger].merge(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.EdgeMerger"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.EdgeKey].create(org.locationtech.jts.operation.overlayng.Edge)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.Edge].size()"
    - "[org.locationtech.jts.operation.overlayng.Edge].merge(org.locationtech.jts.operation.overlayng.Edge)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeMerger:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:79"
        BranchSideFuncs:
        - "create(org.locationtech.jts.operation.overlayng.Edge)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeMerger:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.EdgeMerger:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:71"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "merge(org.locationtech.jts.operation.overlayng.Edge)"
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.EdgeMerger:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:53,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:54,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:56,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:56,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:56,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:57,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeKey].create(org.locationtech.jts.operation.overlayng.Edge)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:58,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:61,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:71,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].size()"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:71,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.EdgeMerger:74,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].merge(org.locationtech.jts.operation.overlayng.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.json.simple.parser.JSONParser].<init>()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.parser.JSONParser:34,1"
      Dst: "[org.json.simple.parser.Yylex].<init>(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.LinkedList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].size()"
    - "[java.util.LinkedList].getFirst()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:39"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:41"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:39,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:41,1"
      Dst: "[java.util.LinkedList].getFirst()"
    - Src: "org.json.simple.parser.JSONParser:42,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.parser.JSONParser].reset()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    - "[org.json.simple.parser.JSONParser].reset()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:63,1"
      Dst: "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:64,1"
      Dst: "[org.json.simple.parser.JSONParser].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].getPosition()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].getPosition()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:71,1"
      Dst: "[org.json.simple.parser.Yylex].getPosition()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.lang.String)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContainerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:75,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContainerFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:79,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.json.simple.parser.JSONParser:81,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:87,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:92,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - "[java.util.LinkedList].<init>()"
    - "[org.json.simple.parser.JSONParser].nextToken()"
    - "[java.lang.Integer].<init>(int)"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    - "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    - "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    - "[java.util.LinkedList].removeFirst()"
    - "[org.json.simple.parser.JSONParser].getPosition()"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[java.util.LinkedList].size()"
    - "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - "[java.util.LinkedList].getFirst()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 201
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:143"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:146"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:145"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:153"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:164"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:170"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:169"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:224"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:230"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:229"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:256"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:259"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:258"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:259"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:118"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:112,1"
      Dst: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:113,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.json.simple.parser.JSONParser:118,1"
      Dst: "[org.json.simple.parser.JSONParser].nextToken()"
    - Src: "org.json.simple.parser.JSONParser:124,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.json.simple.parser.JSONParser:124,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:130,1"
      Dst: "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:135,1"
      Dst: "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    - Src: "org.json.simple.parser.JSONParser:144,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.json.simple.parser.JSONParser:146,1"
      Dst: "[org.json.simple.parser.JSONParser].getPosition()"
    - Src: "org.json.simple.parser.JSONParser:146,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:164,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:167,1"
      Dst: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - Src: "org.json.simple.parser.JSONParser:186,1"
      Dst: "[java.util.LinkedList].getFirst()"
    - Src: "org.json.simple.parser.JSONParser:187,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:221,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 23
    BBCount: 43
  - functionName: "[org.json.simple.parser.JSONParser].nextToken()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].yylex()"
    - "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:270"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:272"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:269,1"
      Dst: "[org.json.simple.parser.Yylex].yylex()"
    - Src: "org.json.simple.parser.JSONParser:271,1"
      Dst: "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.json.simple.parser.JSONParser].createObjectContainer(org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONObject].<init>()"
    - "[org.json.simple.parser.ContainerFactory].createObjectContainer()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:275"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:277"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:276"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:279"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:281"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:276,1"
      Dst: "[org.json.simple.JSONObject].<init>()"
    - Src: "org.json.simple.parser.JSONParser:277,1"
      Dst: "[org.json.simple.parser.ContainerFactory].createObjectContainer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.json.simple.parser.JSONParser].createArrayContainer(org.json.simple.parser.ContainerFactory)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.json.simple.parser.ContainerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.JSONArray].<init>()"
    - "[org.json.simple.parser.ContainerFactory].creatArrayContainer()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:285"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:287"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:286"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:289"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:291"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:286,1"
      Dst: "[org.json.simple.JSONArray].<init>()"
    - Src: "org.json.simple.parser.JSONParser:287,1"
      Dst: "[org.json.simple.parser.ContainerFactory].creatArrayContainer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContentHandler)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.json.simple.parser.ContentHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContentHandler,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:295,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContentHandler,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContentHandler,boolean)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.json.simple.parser.ContentHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:299,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.json.simple.parser.JSONParser:301,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    - Src: "org.json.simple.parser.JSONParser:307,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "org.json.simple.parser.ContentHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - "[java.util.LinkedList].<init>()"
    - "[org.json.simple.parser.ContentHandler].startJSON()"
    - "[org.json.simple.parser.JSONParser].nextToken()"
    - "[java.lang.Integer].<init>(int)"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].primitive(java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].startObject()"
    - "[org.json.simple.parser.ContentHandler].startArray()"
    - "[org.json.simple.parser.ContentHandler].endJSON()"
    - "[org.json.simple.parser.JSONParser].getPosition()"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].startObjectEntry(java.lang.String)"
    - "[java.util.LinkedList].size()"
    - "[java.util.LinkedList].removeFirst()"
    - "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - "[org.json.simple.parser.ContentHandler].endObject()"
    - "[org.json.simple.parser.ContentHandler].endObjectEntry()"
    - "[org.json.simple.parser.ContentHandler].endArray()"
    functionUses: 0
    ICount: 235
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:330"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:335"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:334"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:335"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:341"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:354"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:360"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:366"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:376"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:392"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:396"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:398"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:397"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:404"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:409"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:408"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:411"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:428"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:430"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:429"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:430"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:438"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:446"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:461"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:471"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:475"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:480"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:479"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:482"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:488"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:494"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:508"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:511"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:510"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:511"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:346"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:345"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:331,1"
      Dst: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:332,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.json.simple.parser.JSONParser:348,1"
      Dst: "[org.json.simple.parser.ContentHandler].startJSON()"
    - Src: "org.json.simple.parser.JSONParser:349,1"
      Dst: "[org.json.simple.parser.JSONParser].nextToken()"
    - Src: "org.json.simple.parser.JSONParser:353,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.json.simple.parser.JSONParser:353,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:354,1"
      Dst: "[org.json.simple.parser.ContentHandler].primitive(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:360,1"
      Dst: "[org.json.simple.parser.ContentHandler].startObject()"
    - Src: "org.json.simple.parser.JSONParser:366,1"
      Dst: "[org.json.simple.parser.ContentHandler].startArray()"
    - Src: "org.json.simple.parser.JSONParser:377,1"
      Dst: "[org.json.simple.parser.ContentHandler].endJSON()"
    - Src: "org.json.simple.parser.JSONParser:383,1"
      Dst: "[org.json.simple.parser.JSONParser].getPosition()"
    - Src: "org.json.simple.parser.JSONParser:383,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:396,1"
      Dst: "[org.json.simple.parser.ContentHandler].startObjectEntry(java.lang.String)"
    - Src: "org.json.simple.parser.JSONParser:404,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:405,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.json.simple.parser.JSONParser:406,1"
      Dst: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - Src: "org.json.simple.parser.JSONParser:411,1"
      Dst: "[org.json.simple.parser.ContentHandler].endObject()"
    - Src: "org.json.simple.parser.JSONParser:430,1"
      Dst: "[org.json.simple.parser.ContentHandler].endObjectEntry()"
    - Src: "org.json.simple.parser.JSONParser:482,1"
      Dst: "[org.json.simple.parser.ContentHandler].endArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 23
    BBCount: 68
  - functionName: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    - "[org.json.simple.parser.JSONParser].reset()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:63,1"
      Dst: "[org.json.simple.parser.Yylex].yyreset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:64,1"
      Dst: "[org.json.simple.parser.JSONParser].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].nextToken()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].yylex()"
    - "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:270"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:272"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:269,1"
      Dst: "[org.json.simple.parser.Yylex].yylex()"
    - Src: "org.json.simple.parser.JSONParser:271,1"
      Dst: "[org.json.simple.parser.Yytoken].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.json.simple.parser.JSONParser].getPosition()"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.Yylex].getPosition()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:71,1"
      Dst: "[org.json.simple.parser.Yylex].getPosition()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    functionSourceFile: "org.json.simple.parser.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.ParseException:28,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.LinkedList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].size()"
    - "[java.util.LinkedList].getFirst()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:39"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:41"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:39,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:41,1"
      Dst: "[java.util.LinkedList].getFirst()"
    - Src: "org.json.simple.parser.JSONParser:42,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.lang.String,org.json.simple.parser.ContentHandler,boolean)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.json.simple.parser.ContentHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:299,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.json.simple.parser.JSONParser:301,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    - Src: "org.json.simple.parser.JSONParser:307,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.json.simple.parser.ContentHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:312,1"
      Dst: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "org.json.simple.parser.ContentHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - "[java.util.LinkedList].<init>()"
    - "[org.json.simple.parser.ContentHandler].startJSON()"
    - "[org.json.simple.parser.JSONParser].nextToken()"
    - "[java.lang.Integer].<init>(int)"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].primitive(java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].startObject()"
    - "[org.json.simple.parser.ContentHandler].startArray()"
    - "[org.json.simple.parser.ContentHandler].endJSON()"
    - "[org.json.simple.parser.JSONParser].getPosition()"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].startObjectEntry(java.lang.String)"
    - "[java.util.LinkedList].size()"
    - "[java.util.LinkedList].removeFirst()"
    - "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - "[org.json.simple.parser.ContentHandler].endObject()"
    - "[org.json.simple.parser.ContentHandler].endObjectEntry()"
    - "[org.json.simple.parser.ContentHandler].endArray()"
    functionUses: 0
    ICount: 235
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:330"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:335"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:334"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:335"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:341"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:354"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:360"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:366"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:376"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:392"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:396"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:398"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:397"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:404"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:409"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:408"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:411"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:428"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:430"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:429"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:430"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:438"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:446"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:461"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:471"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:475"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:480"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:479"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:482"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:488"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:494"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:508"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:511"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:510"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:511"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:346"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:345"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:331,1"
      Dst: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:332,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.json.simple.parser.JSONParser:348,1"
      Dst: "[org.json.simple.parser.ContentHandler].startJSON()"
    - Src: "org.json.simple.parser.JSONParser:349,1"
      Dst: "[org.json.simple.parser.JSONParser].nextToken()"
    - Src: "org.json.simple.parser.JSONParser:353,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.json.simple.parser.JSONParser:353,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:354,1"
      Dst: "[org.json.simple.parser.ContentHandler].primitive(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:360,1"
      Dst: "[org.json.simple.parser.ContentHandler].startObject()"
    - Src: "org.json.simple.parser.JSONParser:366,1"
      Dst: "[org.json.simple.parser.ContentHandler].startArray()"
    - Src: "org.json.simple.parser.JSONParser:377,1"
      Dst: "[org.json.simple.parser.ContentHandler].endJSON()"
    - Src: "org.json.simple.parser.JSONParser:383,1"
      Dst: "[org.json.simple.parser.JSONParser].getPosition()"
    - Src: "org.json.simple.parser.JSONParser:383,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:396,1"
      Dst: "[org.json.simple.parser.ContentHandler].startObjectEntry(java.lang.String)"
    - Src: "org.json.simple.parser.JSONParser:404,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:405,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.json.simple.parser.JSONParser:406,1"
      Dst: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - Src: "org.json.simple.parser.JSONParser:411,1"
      Dst: "[org.json.simple.parser.ContentHandler].endObject()"
    - Src: "org.json.simple.parser.JSONParser:430,1"
      Dst: "[org.json.simple.parser.ContentHandler].endObjectEntry()"
    - Src: "org.json.simple.parser.JSONParser:482,1"
      Dst: "[org.json.simple.parser.ContentHandler].endArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 23
    BBCount: 68
  - functionName: "[org.json.simple.parser.JSONParser].parse(java.io.Reader,org.json.simple.parser.ContentHandler,boolean)"
    functionSourceFile: "org.json.simple.parser.JSONParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.Reader"
    - "org.json.simple.parser.ContentHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - "[java.util.LinkedList].<init>()"
    - "[org.json.simple.parser.ContentHandler].startJSON()"
    - "[org.json.simple.parser.JSONParser].nextToken()"
    - "[java.lang.Integer].<init>(int)"
    - "[java.util.LinkedList].addFirst(java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].primitive(java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].startObject()"
    - "[org.json.simple.parser.ContentHandler].startArray()"
    - "[org.json.simple.parser.ContentHandler].endJSON()"
    - "[org.json.simple.parser.JSONParser].getPosition()"
    - "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - "[org.json.simple.parser.ContentHandler].startObjectEntry(java.lang.String)"
    - "[java.util.LinkedList].size()"
    - "[java.util.LinkedList].removeFirst()"
    - "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - "[org.json.simple.parser.ContentHandler].endObject()"
    - "[org.json.simple.parser.ContentHandler].endObjectEntry()"
    - "[org.json.simple.parser.ContentHandler].endArray()"
    functionUses: 0
    ICount: 235
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.parser.JSONParser:330"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:335"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:334"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:335"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:341"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:354"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:360"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:366"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:376"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:392"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:null"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:396"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:398"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:397"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:404"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:409"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:408"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:411"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:428"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:430"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:429"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:430"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:438"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:446"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:461"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:471"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:475"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:480"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:479"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:482"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:488"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:494"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:508"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:507"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:508"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:511"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:510"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.parser.JSONParser:511"
      Branch Sides:
      - BranchSide: "org.json.simple.parser.JSONParser:346"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.parser.JSONParser:345"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.parser.JSONParser:331,1"
      Dst: "[org.json.simple.parser.JSONParser].reset(java.io.Reader)"
    - Src: "org.json.simple.parser.JSONParser:332,1"
      Dst: "[java.util.LinkedList].<init>()"
    - Src: "org.json.simple.parser.JSONParser:348,1"
      Dst: "[org.json.simple.parser.ContentHandler].startJSON()"
    - Src: "org.json.simple.parser.JSONParser:349,1"
      Dst: "[org.json.simple.parser.JSONParser].nextToken()"
    - Src: "org.json.simple.parser.JSONParser:353,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.json.simple.parser.JSONParser:353,1"
      Dst: "[java.util.LinkedList].addFirst(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:354,1"
      Dst: "[org.json.simple.parser.ContentHandler].primitive(java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:360,1"
      Dst: "[org.json.simple.parser.ContentHandler].startObject()"
    - Src: "org.json.simple.parser.JSONParser:366,1"
      Dst: "[org.json.simple.parser.ContentHandler].startArray()"
    - Src: "org.json.simple.parser.JSONParser:377,1"
      Dst: "[org.json.simple.parser.ContentHandler].endJSON()"
    - Src: "org.json.simple.parser.JSONParser:383,1"
      Dst: "[org.json.simple.parser.JSONParser].getPosition()"
    - Src: "org.json.simple.parser.JSONParser:383,1"
      Dst: "[org.json.simple.parser.ParseException].<init>(int,int,java.lang.Object)"
    - Src: "org.json.simple.parser.JSONParser:396,1"
      Dst: "[org.json.simple.parser.ContentHandler].startObjectEntry(java.lang.String)"
    - Src: "org.json.simple.parser.JSONParser:404,1"
      Dst: "[java.util.LinkedList].size()"
    - Src: "org.json.simple.parser.JSONParser:405,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.json.simple.parser.JSONParser:406,1"
      Dst: "[org.json.simple.parser.JSONParser].peekStatus(java.util.LinkedList)"
    - Src: "org.json.simple.parser.JSONParser:411,1"
      Dst: "[org.json.simple.parser.ContentHandler].endObject()"
    - Src: "org.json.simple.parser.JSONParser:430,1"
      Dst: "[org.json.simple.parser.ContentHandler].endObjectEntry()"
    - Src: "org.json.simple.parser.JSONParser:482,1"
      Dst: "[org.json.simple.parser.ContentHandler].endArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 23
    BBCount: 68
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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: "org.locationtech.jtstest.util.CommandRunner:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.CommandRunner:29,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].exec(java.lang.String[])"
    - "[java.lang.String].getBytes()"
    - "[java.lang.Process].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].flush()"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Process].getInputStream()"
    - "[org.locationtech.jtstest.util.StreamGrabber].<init>(java.io.InputStream)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].start()"
    - "[java.lang.Process].getErrorStream()"
    - "[java.lang.Process].waitFor()"
    - "[java.lang.Thread].join()"
    - "[org.locationtech.jtstest.util.StreamGrabber].getOutput()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.CommandRunner:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.CommandRunner:45,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:47,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:47,1"
      Dst: "[java.lang.Runtime].exec(java.lang.String[])"
    - Src: "org.locationtech.jtstest.util.CommandRunner:54,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:56,1"
      Dst: "[java.lang.Process].getOutputStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:57,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "org.locationtech.jtstest.util.CommandRunner:58,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:59,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:62,1"
      Dst: "[java.lang.Process].getInputStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:62,1"
      Dst: "[org.locationtech.jtstest.util.StreamGrabber].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:63,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:64,1"
      Dst: "[java.lang.Thread].start()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:68,1"
      Dst: "[java.lang.Process].getErrorStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:72,1"
      Dst: "[java.lang.Process].waitFor()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:73,1"
      Dst: "[java.lang.Thread].join()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:76,1"
      Dst: "[org.locationtech.jtstest.util.StreamGrabber].getOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].exec(java.lang.String[])"
    - "[java.lang.String].getBytes()"
    - "[java.lang.Process].getOutputStream()"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].flush()"
    - "[java.io.OutputStream].close()"
    - "[java.lang.Process].getInputStream()"
    - "[org.locationtech.jtstest.util.StreamGrabber].<init>(java.io.InputStream)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].start()"
    - "[java.lang.Process].getErrorStream()"
    - "[java.lang.Process].waitFor()"
    - "[java.lang.Thread].join()"
    - "[org.locationtech.jtstest.util.StreamGrabber].getOutput()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.CommandRunner:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.CommandRunner:45,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:47,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:47,1"
      Dst: "[java.lang.Runtime].exec(java.lang.String[])"
    - Src: "org.locationtech.jtstest.util.CommandRunner:54,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:56,1"
      Dst: "[java.lang.Process].getOutputStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:57,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "org.locationtech.jtstest.util.CommandRunner:58,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:59,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:62,1"
      Dst: "[java.lang.Process].getInputStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:62,1"
      Dst: "[org.locationtech.jtstest.util.StreamGrabber].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:63,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:64,1"
      Dst: "[java.lang.Thread].start()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:68,1"
      Dst: "[java.lang.Process].getErrorStream()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:72,1"
      Dst: "[java.lang.Process].waitFor()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:73,1"
      Dst: "[java.lang.Thread].join()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:76,1"
      Dst: "[org.locationtech.jtstest.util.StreamGrabber].getOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].getStdout()"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].getStderr()"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.CommandRunner].cmdArray(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.CommandRunner"
    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.String].toLowerCase()"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.CommandRunner:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.CommandRunner:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.CommandRunner:90,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.CommandRunner:91,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "org.locationtech.jtstest.util.CommandRunner:91,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Color"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineEndStyle].<init>(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineEndStyle].<init>(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Color"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,double,double,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.awt.Color"
    - "double"
    - "double"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].<init>(java.awt.Color,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].setSize(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].paint(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].vector(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].toCircle(double,double,double)"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].vector(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:68,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:69,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].toCircle(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:73,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:77,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:80,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].vector(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.Point2D"
    argCount: 3
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:36,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:37,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:38,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:39,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].toCircle(double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Shape"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:85,1"
      Dst: "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle].toCircle(double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Shape"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.CircleLineEndStyle:85,1"
      Dst: "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[javax.swing.JTabbedPane].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].<init>()"
    - "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 112
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:103,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:57,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:61,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:66,1"
      Dst: "[javax.swing.JTabbedPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:69,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:75,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:76,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:83,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:94,1"
      Dst: "[javax.swing.SpinnerNumberModel].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:94,1"
      Dst: "[javax.swing.JSpinner].<init>(javax.swing.SpinnerModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:95,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:108,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getScalarFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getName()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:151,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_mouseMoved(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:155,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:156,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].btnRunTests_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].runTests()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].runTests()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].runTests()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getIM()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>(org.locationtech.jts.geom.IntersectionMatrix)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].transpose()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setRelateLabel(javax.swing.JLabel,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isEquals(int,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setPredicate(javax.swing.JLabel,boolean)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCrosses(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isWithin()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isContains()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isOverlaps(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionUses: 0
    ICount: 112
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getIM()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:187,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>(org.locationtech.jts.geom.IntersectionMatrix)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:189,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].transpose()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:190,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setRelateLabel(javax.swing.JLabel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:200,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:200,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:203,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:206,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isEquals(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setPredicate(javax.swing.JLabel,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:207,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:208,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:209,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:210,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCrosses(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:211,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isWithin()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:212,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isContains()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:213,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isOverlaps(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:214,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:215,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getIM()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].runRelate()"
    - "[org.locationtech.jtstest.test.Testable].getIntersectionMatrix()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].runRelate()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:136,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getIntersectionMatrix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].runRelate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometries()"
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.test.Testable].setIntersectionMatrix(org.locationtech.jts.geom.IntersectionMatrix)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:144,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:144,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setIntersectionMatrix(org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometries()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:130,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:90,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:69,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].transpose()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    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: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setRelateLabel(javax.swing.JLabel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuffer].setCharAt(int,char)"
    - "[java.lang.StringBuffer].toString()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:231,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:231,1"
      Dst: "[java.lang.StringBuffer].setCharAt(int,char)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:232,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:232,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    functionSourceFile: "org.locationtech.jts.geom.Dimension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    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: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:576"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:575"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:570,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:576,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isEquals(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:484"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:485,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setPredicate(javax.swing.JLabel,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JLabel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:240,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:241,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:242,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 306
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 320
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:321"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:320"
        BranchSideFuncs:
        - "isDisjoint()"
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:321,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 2
    ICount: 41
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:344"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:337,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:345,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 14
    BBCount: 20
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCrosses(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 54
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:377"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:377"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:381"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:387"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:386"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:390"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:381,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 17
    BBCount: 29
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isWithin()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:403,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isContains()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 414
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:415"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:415,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isOverlaps(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 506
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:506"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:508"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:512"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:512"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:510"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:511"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:513"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:517"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:513"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:517"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:514"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-1"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:509,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 430
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:434"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:434"
        BranchSideFuncs:
        - "isTrue(int)"
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:435"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:433"
        BranchSideFuncs:
        - "isTrue(int)"
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:432,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:455"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:456"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:455"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:454,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTrue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].editPanel_geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:165,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:150,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:179,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:181,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].validPanel_setHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:187,1"
      Dst: "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:190,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].txtDesc_focusLost(java.awt.event.FocusEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.FocusEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:174,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setName(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:77,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].jTabbedPane1_stateChanged(javax.swing.event.ChangeEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].getSelectedComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:179,1"
      Dst: "[javax.swing.JTabbedPane].getSelectedComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:204,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:205,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:205,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:205,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].<init>(int,int,int)"
    - "[javax.swing.BorderFactory].createBevelBorder(int,java.awt.Color,java.awt.Color,java.awt.Color,java.awt.Color)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[java.awt.Component].addMouseMotionListener(java.awt.event.MouseMotionListener)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$2].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$3].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].addValidPanelListener(org.locationtech.jtstest.testbuilder.event.ValidPanelListener)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$4].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[java.awt.Component].addFocusListener(java.awt.event.FocusListener)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$5].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createBevelBorder(int)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$6].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - "[javax.swing.JLabel].<init>()"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$7].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JSpinner].getEditor()"
    - "[javax.swing.JSpinner$DefaultEditor].getTextField()"
    - "[javax.swing.JTextField].setColumns(int)"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.Box].createHorizontalGlue()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.Box].createHorizontalStrut(int)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel$8].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.GridLayout].<init>(int,int)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[javax.swing.JTabbedPane].<init>()"
    - "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 234
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:213,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:213,1"
      Dst: "[javax.swing.BorderFactory].createBevelBorder(int,java.awt.Color,java.awt.Color,java.awt.Color,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:215,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$1].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:217,1"
      Dst: "[java.awt.Component].addMouseMotionListener(java.awt.event.MouseMotionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:228,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:229,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$2].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:230,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:237,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$3].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:237,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].addValidPanelListener(org.locationtech.jtstest.testbuilder.event.ValidPanelListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:244,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$4].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:244,1"
      Dst: "[java.awt.Component].addFocusListener(java.awt.event.FocusListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$5].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:251,1"
      Dst: "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:259,1"
      Dst: "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:259,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:261,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:264,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:268,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:271,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:271,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:272,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:279,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:280,1"
      Dst: "[javax.swing.BorderFactory].createBevelBorder(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:286,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:287,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$6].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:294,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:295,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:300,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$7].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:310,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:311,1"
      Dst: "[javax.swing.JSpinner].getEditor()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:311,1"
      Dst: "[javax.swing.JSpinner$DefaultEditor].getTextField()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:311,1"
      Dst: "[javax.swing.JTextField].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:312,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:313,1"
      Dst: "[javax.swing.Box].createHorizontalGlue()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:313,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:316,1"
      Dst: "[javax.swing.Box].createHorizontalStrut(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel$8].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:335,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:336,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:341,1"
      Dst: "[java.awt.GridLayout].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:350,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:353,1"
      Dst: "[javax.swing.JTabbedPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:356,1"
      Dst: "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].updateTestCaseIndexLabel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    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()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:370,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getStretchSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JSpinner].getValue()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:374,1"
      Dst: "[javax.swing.JSpinner].getValue()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:374,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Location].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Location"
    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: "org.locationtech.jts.geom.Location:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Location].toLocationSymbol(int)"
    functionSourceFile: "org.locationtech.jts.geom.Location"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "char"
    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: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Location:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].<init>()"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:19,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:16,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].<init>(boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:16,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].println()"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.PrintStream].println()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.CommandOutput:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:32"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:31"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:29,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:32,1"
      Dst: "[java.io.PrintStream].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.CommandOutput:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:42,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].print(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.CommandOutput:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:48,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:51,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].getOutput()"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:56,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:37,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:38,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:37,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:38,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readShortBE()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 128
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:172"
      Branch Sides: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:69,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:74,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:74,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:74,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:104,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readShortBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:176,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 36
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[],int,int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:82,1"
      Dst: "[java.io.DataInputStream].readFully(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[],int,int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:115,1"
      Dst: "[java.io.DataInputStream].readFully(byte[],int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:125,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readShortBE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readShort()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:65,1"
      Dst: "[java.io.DataInputStream].readShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].getShapeType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].getLength(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:198,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:199,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].zMinMax(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:239"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:224,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:233,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler:234,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:43,1"
      Dst: "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:58"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getCoordinate()"
    - Branch String: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:58"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getCoordinate()"
    - Branch String: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.ConnectedElementPointFilter:59,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOpPoint(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:154,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:156,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabel:626"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:629"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabel:628"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 28
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:190"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 28
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:212,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:249,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:251,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:279,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:280,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:302,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:303,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:322,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:323,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:324,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:325,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 386
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:387,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setAreaResultOnly(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 426
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 450
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 497
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].nodeEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].buildGraph(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isResultAreaConsistent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 34
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:506"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:505"
        BranchSideFuncs:
        - "labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:510"
        BranchSideFuncs:
        - "toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:509"
        BranchSideFuncs:
        - "toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:513"
        BranchSideFuncs:
        - "toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:512"
        BranchSideFuncs:
        - "isFloating(org.locationtech.jts.geom.PrecisionModel)"
        - "extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:525"
        BranchSideFuncs:
        - "getGeometry(int)"
        - "isResultAreaConsistent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:524"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:522"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:525"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:498,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].nodeEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:500,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].buildGraph(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:503,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].toLines(org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:506,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:513,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:520,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:521,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:521,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isResultAreaConsistent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:523,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].nodeEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 531
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].clippingEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].setClipEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].build(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].hasEdgesFor(int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].setCollapsed(int,boolean)"
    functionUses: 1
    ICount: 33
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:538"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:545"
        BranchSideFuncs:
        - "clippingEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:544"
        BranchSideFuncs:
        - "getGeometry(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:545"
        BranchSideFuncs:
        - "setClipEnvelope(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:544"
        BranchSideFuncs:
        - "getGeometry(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:545"
        BranchSideFuncs:
        - "setCollapsed(int,boolean)"
        - "hasEdgesFor(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:544"
        BranchSideFuncs:
        - "getGeometry(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:553"
        BranchSideFuncs:
        - "setCollapsed(int,boolean)"
        - "hasEdgesFor(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:552"
        BranchSideFuncs:
        - "setCollapsed(int,boolean)"
        - "hasEdgesFor(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:532,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:539,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].clippingEnvelope(int,org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:541,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].setClipEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:545,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:544,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].build(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:553,1"
      Dst: "[org.locationtech.jts.operation.overlayng.EdgeNodingBuilder].hasEdgesFor(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:553,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].setCollapsed(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].buildGraph(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 559
    functionDepth: 12
    returnType: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].<init>()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - "[org.locationtech.jts.operation.overlayng.Edge].createLabel()"
    - "[org.locationtech.jts.operation.overlayng.Edge].getCoordinates()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:561"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:564"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getCoordinates()"
        - "createLabel()"
        - "addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:563"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:560,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:561,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:561,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:561,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:562,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:562,1"
      Dst: "[org.locationtech.jts.operation.overlayng.Edge].createLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:562,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].labelGraph(org.locationtech.jts.operation.overlayng.OverlayGraph)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 567
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.operation.overlayng.InputGeometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].computeLabelling()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markResultAreaEdges(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].unmarkDuplicateEdgesFromResultArea()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:568,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.operation.overlayng.InputGeometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:569,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].computeLabelling()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:570,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markResultAreaEdges(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:571,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].unmarkDuplicateEdgesFromResultArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].extractResult(int,org.locationtech.jts.operation.overlayng.OverlayGraph)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 592
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getResultAreaEdges()"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.PolygonBuilder].getPolygons()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].getLines()"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].getPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].isEmpty(java.util.List)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 71
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:593"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:593"
        BranchSideFuncs:
        - "getPolygons()"
        - "<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
        - "getResultAreaEdges()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:599"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:604"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:628"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:606"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:610"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
        - "getLines()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:619"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:619"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:619"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:621"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:620"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:622"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:629"
        BranchSideFuncs:
        - "setStrictMode(boolean)"
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
        - "getPoints()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:628"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:622"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:629"
        BranchSideFuncs:
        - "setStrictMode(boolean)"
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
        - "getPoints()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:628"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:629"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:634"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:633"
        BranchSideFuncs:
        - "createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:630"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:634"
        BranchSideFuncs:
        - "isEmpty(java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:633"
        BranchSideFuncs:
        - "createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:631"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:634"
        BranchSideFuncs:
        - "createEmptyResult()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:633"
        BranchSideFuncs:
        - "createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:596,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getResultAreaEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:597,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].<init>(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:598,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PolygonBuilder].getPolygons()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:599,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:611,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:612,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:613,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].getLines()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:623,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:624,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].setStrictMode(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:625,1"
      Dst: "[org.locationtech.jts.operation.overlayng.IntersectionPointBuilder].getPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:629,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].isEmpty(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:632,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:634,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createResultGeometry(java.util.List,java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 17
    BBCount: 31
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].isEmpty(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 638
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.List].size()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:639"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:638"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:639"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:638"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:639,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 644
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultDimension(int,int,int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:645,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getDimension(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:644,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].resultDimension(int,int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:643,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.MidpointSplitPointFinder].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.MidpointSplitPointFinder"
    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: "org.locationtech.jts.triangulate.MidpointSplitPointFinder:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.MidpointSplitPointFinder].findSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.MidpointSplitPointFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getStart()"
    - "[org.locationtech.jts.triangulate.Segment].getEnd()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.MidpointSplitPointFinder:36,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStart()"
    - Src: "org.locationtech.jts.triangulate.MidpointSplitPointFinder:37,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEnd()"
    - Src: "org.locationtech.jts.triangulate.MidpointSplitPointFinder:38,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStart()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:73,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEnd()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:82,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].<init>(org.locationtech.jts.operation.overlayng.OverlayGraph,org.locationtech.jts.operation.overlayng.InputGeometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    - "org.locationtech.jts.operation.overlayng.InputGeometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:42,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].computeLabelling()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelAreaNodeEdges(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelConnectedLinearEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdges()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdges()"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:50,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:52,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelAreaNodeEdges(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelConnectedLinearEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:65,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdges()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelAreaNodeEdges(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:83"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "hasEdges(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:82"
        BranchSideFuncs:
        - "propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:77,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:78,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:79,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateAreaLocations(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLocation(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(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.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 47
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:101"
        BranchSideFuncs:
        - "degree()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:103"
        BranchSideFuncs:
        - "findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:126"
        BranchSideFuncs:
        - "isTrue(boolean)"
        - "hasSides(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:141"
        BranchSideFuncs:
        - "getLocation(int,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:146"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:116"
        BranchSideFuncs:
        - "getLabel()"
        - "isBoundary(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:102,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].degree()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:104,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:110,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:111,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:117,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:123,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:127,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:140,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:144,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findPropagationStartEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:171"
        BranchSideFuncs:
        - "hasSides(int)"
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:170"
        BranchSideFuncs:
        - "oNext()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:165"
        BranchSideFuncs:
        - "getLabel()"
        - "isBoundary(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:166,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:167,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundary(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:168,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].hasSides(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:168,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:171,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:209"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:204"
        BranchSideFuncs:
        - "getLabel()"
        - "isLineLocationUnknown(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:208"
        BranchSideFuncs:
        - "labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:201,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:202,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:202,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:203,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelCollapsedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationCollapse(int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:220"
        BranchSideFuncs:
        - "setLocationCollapse(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:214,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:215,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:221,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationCollapse(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelConnectedLinearEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocations(int)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:236"
        BranchSideFuncs:
        - "propagateLinearLocations(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:235"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocations(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:233,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasEdges(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocations(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findLinearEdgesWithLocation(java.util.Collection,int)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isLine(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
    - "[java.util.List].size()"
    - "[java.util.ArrayDeque].<init>(java.util.Collection)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].removeFirst()"
    functionUses: 2
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:248"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:260"
        BranchSideFuncs:
        - "propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:246,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findLinearEdgesWithLocation(java.util.Collection,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:247,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:249,1"
      Dst: "[java.util.ArrayDeque].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isLine(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:252,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:253,1"
      Dst: "[java.util.Deque].removeFirst()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:258,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].propagateLinearLocationAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,int,boolean,java.util.Deque)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 264
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    - "boolean"
    - "java.util.Deque"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:290"
        BranchSideFuncs:
        - "oNextOE()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:274"
        BranchSideFuncs:
        - "getLabel()"
        - "isLineLocationUnknown(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:265,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:265,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:273,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:277,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:282,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationLine(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:289,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:289,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].findLinearEdgesWithLocation(java.util.Collection,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 304
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLinear(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:314"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isLinear(int)"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:313"
        BranchSideFuncs:
        - "isLineLocationUnknown(int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:305,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:306,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:307,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:309,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLinear(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:310,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:311,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 331
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:341"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:336"
        BranchSideFuncs:
        - "getLabel()"
        - "isLineLocationUnknown(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:340"
        BranchSideFuncs:
        - "labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:332,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:334,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:334,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineLocationUnknown(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:335,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].labelDisconnectedEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationAll(int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:364"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:378"
        BranchSideFuncs:
        - "setLocationAll(int,int)"
        - "locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:364,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isArea(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:365,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].setLocationAll(int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:379,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].locateEdge(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:399"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:398,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:398,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.InputGeometry"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getLocator(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.SimplePointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.IndexedPointOnLineLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:126"
        BranchSideFuncs:
        - "getGeometry(int)"
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.InputGeometry:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.InputGeometry:130"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate)"
        - "getLocator(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:131,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getLocator(int)"
    - Src: "org.locationtech.jts.operation.overlayng.InputGeometry:132,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].locateEdgeBothEnds(int,org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 423
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:423"
        BranchSideFuncs:
        - "orig()"
        - "locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
        - "dest()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:423"
        BranchSideFuncs:
        - "orig()"
        - "locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
        - "dest()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:426"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:424,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].locatePointInArea(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:425,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markResultAreaEdges(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 431
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:435"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:432,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:433,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].markInResultArea(org.locationtech.jts.operation.overlayng.OverlayEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocationBoundaryOrLine(int,int,boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultArea()"
    functionUses: 1
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:456"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:448,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:449,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryEither()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:452,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:452,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocationBoundaryOrLine(int,int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:450,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:454,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].unmarkDuplicateEdgesFromResultArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: 465
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultAreaBoth()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].unmarkFromResultAreaBoth()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:471"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isInResultAreaBoth()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:470"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:467"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:470"
        BranchSideFuncs:
        - "unmarkFromResultAreaBoth()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:469"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:466,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:467,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultAreaBoth()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].unmarkFromResultAreaBoth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabeller].toString(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabeller"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayLabeller:486"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:479"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayLabeller:478"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:474,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:475,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:476,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:476,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:476,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:479,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabeller:485,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:140,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:235"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:184,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.match.AreaSimilarityMeasure].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.match.AreaSimilarityMeasure"
    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: "org.locationtech.jts.algorithm.match.AreaSimilarityMeasure:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.match.AreaSimilarityMeasure].measure(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.match.AreaSimilarityMeasure"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.match.AreaSimilarityMeasure:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.match.AreaSimilarityMeasure:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jts.algorithm.match.AreaSimilarityMeasure:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16:165,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].removeDuplicatePoints()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$16:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].removeDuplicatePoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].removeDuplicatePoints()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].<init>()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:372,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:374,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:374,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:375,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:375,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].<init>()"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    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: "org.locationtech.jtstest.clean.CleanDuplicatePoints:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.clean.CleanDuplicatePoints"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.GeometryCollection)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:56,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:60,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:61,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:62,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:63,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:64,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:65,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.clean.CleanDuplicatePoints:66,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 19
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:491,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:493,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineInterval].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.sweepline.SweepLineInterval].<init>(double,double,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineInterval:24,1"
      Dst: "[org.locationtech.jts.index.sweepline.SweepLineInterval].<init>(double,double,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineInterval].<init>(double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineInterval:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineInterval:28"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineInterval:27"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.sweepline.SweepLineInterval:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineInterval:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.sweepline.SweepLineInterval:28"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.sweepline.SweepLineInterval:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMin()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineInterval].getMax()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.sweepline.SweepLineInterval].getItem()"
    functionSourceFile: "org.locationtech.jts.index.sweepline.SweepLineInterval"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.event.ValidPanelEvent].<init>(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent:27,1"
      Dst: "[java.util.EventObject].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.IsSimpleOp$EndpointInfo].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.IsSimpleOp$EndpointInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.IsSimpleOp$EndpointInfo:286,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.IsSimpleOp$EndpointInfo].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.IsSimpleOp$EndpointInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.IsSimpleOp$EndpointInfo].addEndpoint(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.IsSimpleOp$EndpointInfo"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsXML(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$8:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsXML(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].saveAsXML(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - "[java.io.File].getPath()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:37,1"
      Dst: "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:38,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:39,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:40,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:41,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:43,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:43,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:46,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].getNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:51,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].setEdgeRing(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geomgraph.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "org.locationtech.jts.geomgraph.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeRing(org.locationtech.jts.geomgraph.EdgeRing)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:55,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeRing(org.locationtech.jts.geomgraph.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeRing(org.locationtech.jts.geomgraph.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].linkDirectedEdgesForMinimalEdgeRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:65"
        BranchSideFuncs:
        - "getEdges()"
        - "linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
        - "getNext()"
        - "getNode()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:66,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:67,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:67,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:68,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlay.MaximalEdgeRing].buildMinimalRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getMinEdgeRing()"
    - "[org.locationtech.jts.operation.overlay.MinimalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:81"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:80"
        BranchSideFuncs:
        - "getNext()"
    - Branch String: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:76"
        BranchSideFuncs:
        - "getMinEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:74,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:77,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getMinEdgeRing()"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:78,1"
      Dst: "[org.locationtech.jts.operation.overlay.MinimalEdgeRing].<init>(org.locationtech.jts.geomgraph.DirectedEdge,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:79,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.MaximalEdgeRing:81,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.linearref.LinearLocation[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:37,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:38,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LinearLocation].copy()"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfLine:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfLine:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfLine:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:49,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:51,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:53,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:55,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:59,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].copy()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:62,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:55,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].copy()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 2
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:467,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:87,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:91,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfPoint:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfPoint:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:75,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:78,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:79,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:82,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:87,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LinearLocation].copy()"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexOfLine:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfLine:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexOfLine:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:49,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:51,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:53,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:55,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:59,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].copy()"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:62,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14:152,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionLoadXmlTestFolder()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$14:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionLoadXmlTestFolder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionLoadXmlTestFolder()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - "[javax.swing.JFileChooser].showOpenDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFiles()"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:384,1"
      Dst: "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:385,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:386,1"
      Dst: "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:387,1"
      Dst: "[javax.swing.JFileChooser].showOpenDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:388,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFiles()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:390,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:392,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:396,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:282,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:286,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule"
    linkageType: null
    functionLinenumber: 174
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule:175,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule:179"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].toString()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:91,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:103,1"
      Dst: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:117,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.ProcessingInstruction:118,1"
      Dst: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:119,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:132,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.ProcessingInstruction:133,1"
      Dst: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:134,1"
      Dst: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setTarget(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkProcessingInstructionTarget(java.lang.String)"
    - "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:145"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:145,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionTarget(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:147,1"
      Dst: "[org.jdom2.IllegalTargetException].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ProcessingInstruction].getValue()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].getTarget()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].getData()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].getPseudoAttributeNames()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].keySet()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:192,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "org.jdom2.ProcessingInstruction:192,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setData(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:203"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:207"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:202,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:204,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:208,1"
      Dst: "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ProcessingInstruction].setData(java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    - "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - "[java.util.LinkedHashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:225"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:229"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:222,1"
      Dst: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    - Src: "org.jdom2.ProcessingInstruction:224,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:226,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:230,1"
      Dst: "[java.util.LinkedHashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ProcessingInstruction].getPseudoAttributeValue(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:245,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setPseudoAttribute(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:259"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:262"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:264"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:268"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:258,1"
      Dst: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:260,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:268,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.ProcessingInstruction:269,1"
      Dst: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.Verifier].checkProcessingInstructionData(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:840"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:847"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:846"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:841"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:847"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:846"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:838,1"
      Dst: "[org.jdom2.Verifier].checkCharacterData(java.lang.String)"
    - Src: "org.jdom2.Verifier:841,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalDataException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "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: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalDataException:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:299"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:306"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:305"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:306"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:310"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:297,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.jdom2.ProcessingInstruction:306,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.ProcessingInstruction:307,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "org.jdom2.ProcessingInstruction:310,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.ProcessingInstruction].removePseudoAttribute(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].remove(java.lang.Object)"
    - "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:282"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:287"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:282,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "org.jdom2.ProcessingInstruction:283,1"
      Dst: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:299"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:306"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:305"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:306"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:310"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:297,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.jdom2.ProcessingInstruction:306,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.ProcessingInstruction:307,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "org.jdom2.ProcessingInstruction:310,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.ProcessingInstruction].toString(java.util.Map)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    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].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:299"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:306"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:305"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:306"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:310"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:297,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.ProcessingInstruction:299,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:300,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "org.jdom2.ProcessingInstruction:306,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "org.jdom2.ProcessingInstruction:307,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "org.jdom2.ProcessingInstruction:310,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.util.Collections].emptyMap()"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 51
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:337"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:390"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:346"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:371"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:348"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:363"
        BranchSideFuncs:
        - "extractQuotedString(java.lang.String)"
      - BranchSide: "org.jdom2.ProcessingInstruction:362"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:355"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:358"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:357"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:363"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:363"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:380"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:329,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:334,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.jdom2.ProcessingInstruction:337,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.ProcessingInstruction:344,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.ProcessingInstruction:346,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.ProcessingInstruction:349,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.jdom2.ProcessingInstruction:352,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.jdom2.ProcessingInstruction:352,1"
      Dst: "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:356,1"
      Dst: "[java.util.Collections].emptyMap()"
    - Src: "org.jdom2.ProcessingInstruction:363,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "org.jdom2.ProcessingInstruction:386,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: 410
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:422"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:441"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:440"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:424"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:425"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:424"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:424"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:411"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:410"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:425"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:431"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:410"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:422,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.ProcessingInstruction:423,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.jdom2.ProcessingInstruction].toString()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.output.XMLOutputter].<init>()"
    - "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.ProcessingInstruction)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:456,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:456,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:456,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:456,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.ProcessingInstruction)"
    - Src: "org.jdom2.ProcessingInstruction:456,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:275,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.ProcessingInstruction)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.ProcessingInstruction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:739,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:741,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.ProcessingInstruction,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:745,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.ProcessingInstruction].clone()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 2
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].clone()"
    - "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:465,1"
      Dst: "[org.jdom2.Content].clone()"
    - Src: "org.jdom2.ProcessingInstruction:471,1"
      Dst: "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].parseData(java.lang.String)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.util.Collections].emptyMap()"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 51
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.ProcessingInstruction:337"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:390"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:346"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:371"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:348"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:363"
        BranchSideFuncs:
        - "extractQuotedString(java.lang.String)"
      - BranchSide: "org.jdom2.ProcessingInstruction:362"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:355"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:358"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ProcessingInstruction:357"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ProcessingInstruction:363"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:363"
      Branch Sides: []
    - Branch String: "org.jdom2.ProcessingInstruction:380"
      Branch Sides:
      - BranchSide: "org.jdom2.ProcessingInstruction:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:329,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "org.jdom2.ProcessingInstruction:334,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.jdom2.ProcessingInstruction:337,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.ProcessingInstruction:344,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.ProcessingInstruction:346,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.ProcessingInstruction:349,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.jdom2.ProcessingInstruction:352,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.jdom2.ProcessingInstruction:352,1"
      Dst: "[org.jdom2.ProcessingInstruction].extractQuotedString(java.lang.String)"
    - Src: "org.jdom2.ProcessingInstruction:356,1"
      Dst: "[java.util.Collections].emptyMap()"
    - Src: "org.jdom2.ProcessingInstruction:363,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "org.jdom2.ProcessingInstruction:386,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.jdom2.ProcessingInstruction].detach()"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].detach()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:477,1"
      Dst: "[org.jdom2.Content].detach()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.ProcessingInstruction"
    linkageType: null
    functionLinenumber: 481
    functionDepth: 0
    returnType: "org.jdom2.ProcessingInstruction"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ProcessingInstruction:482,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$7].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$7:242,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$7].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$7:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$7:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$7:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$7:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$7:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$7:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:248,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:249,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:251,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:251,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:253,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:255,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:257,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$7:258,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.xml.sax.Attributes"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:497,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:498,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:499,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:500,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:503,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:504,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:506,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:508,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingSelfNode"
    linkageType: null
    functionLinenumber: 414
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:415,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingSelfNode"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingSelfNode].isExterior(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingSelfNode"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:448"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:447"
        BranchSideFuncs:
        - "isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:449"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:448"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:447"
        BranchSideFuncs:
        - "isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingSelfNode:448,1"
      Dst: "[org.locationtech.jts.algorithm.PolygonNodeTopology].isInteriorSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].setData(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].size()"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 60
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 62
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].isClosed()"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 4
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:67,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].getSegmentOctant(int)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.Octant].octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BasicSegmentString:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BasicSegmentString:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BasicSegmentString:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:80,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.BasicSegmentString:80,1"
      Dst: "[org.locationtech.jts.noding.Octant].octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 62
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.Octant].octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.Octant"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.Octant].octant(double,double)"
    - "[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: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.Octant:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:83"
        BranchSideFuncs:
        - "octant(double,double)"
    - Branch String: "org.locationtech.jts.noding.Octant:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:83"
        BranchSideFuncs:
        - "octant(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:84,1"
      Dst: "[org.locationtech.jts.noding.Octant].octant(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BasicSegmentString].toString()"
    functionSourceFile: "org.locationtech.jts.noding.BasicSegmentString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BasicSegmentString:85,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.BasicSegmentString:85,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.impl.CoordinateArraySequence"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.impl.CoordinateArraySequence:65,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    - Src: "org.locationtech.jts.io.WKTWriter:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:33,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].setBorderEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].setBorder(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].setBorderColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].setFill(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].setTitle(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].paint(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:63,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:65,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:65,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:65,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:71,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:78,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:79,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Rectangle"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:83,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:84,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:87,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:93,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:95,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Rectangle"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:83,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:84,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:87,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:93,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement:95,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].<init>(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:150,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter"
    linkageType: null
    functionLinenumber: 160
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LinearRing].isClosed()"
    - "[org.locationtech.jts.simplify.TaggedLineString].<init>(org.locationtech.jts.geom.LineString,int,boolean)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].access$000(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:171"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:165"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:166"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:165"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:166"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.LineString,int,boolean)"
        - "access$000(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:165"
        BranchSideFuncs:
        - "isClosed()"
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:164,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:166,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:168,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].<init>(org.locationtech.jts.geom.LineString,int,boolean)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:169,1"
      Dst: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].access$000(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:169,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].<init>(org.locationtech.jts.geom.LineString,int,boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].init()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:35,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:43,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].init()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.simplify.TaggedLineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:91,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:94,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineSegment"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineSegment:31,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].access$000(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentVisitor].<init>(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentVisitor:83,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.LineSegmentVisitor:81,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentVisitor].visitItem(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentVisitor"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LineSegmentVisitor:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LineSegmentVisitor:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LineSegmentVisitor:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentVisitor:90,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentVisitor:91,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 5
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:76,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.geom.Envelope:77,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.simplify.LineSegmentVisitor].getItems()"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.ArrayList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    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: "org.locationtech.jtslab.IteratedOverlayFunctions:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayOld(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:30,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[java.util.List].set(int,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:43,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:47,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:49,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:54,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:56,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:57,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:69,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:121,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:122,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:124,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:212,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:137,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:138,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:138,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:130,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:131,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:133,1"
      Dst: "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:142,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:143,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:144,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:146,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:149,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:149,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayNG(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:34,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[java.util.List].set(int,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:43,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:47,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:49,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:54,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:56,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:57,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:69,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlaySR(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:39,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[java.util.List].set(int,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:43,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:47,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:49,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:54,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:56,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:57,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:69,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlay(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[java.util.List].set(int,java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:62"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:43,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:47,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:49,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:52,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:54,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:56,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:57,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:64,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:69,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIndexedNG(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIndexed(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:75,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIndexed(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIndexed(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].insertPolys(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.quadtree.Quadtree)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].queryAll()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:79,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:83,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:85,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:87,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:87,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:88,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:91,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:92,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:95,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:96,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:97,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].insertPolys(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.quadtree.Quadtree)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:106,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].queryAll()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.quadtree.Root].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:103,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:193,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:194,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:195,1"
      Dst: "[org.locationtech.jts.index.ArrayListVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:121,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:122,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:124,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:137,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:138,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:138,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:156,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:157,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:142,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].collectStats(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:143,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].ensureExtent(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:144,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:130,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:131,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:133,1"
      Dst: "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].insertPolys(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.quadtree.Quadtree)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.quadtree.Quadtree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:111,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:113,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:113,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:113,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:114,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].queryAll()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.quadtree.NodeBase].addAllItems(java.util.List)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:225,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:226,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].addAllItems(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIndexed(org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtslab.IteratedOverlayFunctions].insertPolys(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.quadtree.Quadtree)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].queryAll()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:79,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:83,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:85,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:87,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:87,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:88,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:91,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:92,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:95,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:96,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:97,1"
      Dst: "[org.locationtech.jtslab.IteratedOverlayFunctions].insertPolys(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.quadtree.Quadtree)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:106,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].queryAll()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].insertPolys(org.locationtech.jts.geom.Geometry,org.locationtech.jts.index.quadtree.Quadtree)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.index.quadtree.Quadtree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:111,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:113,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:113,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:113,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:114,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:121,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:122,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:124,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].overlayDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:130,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:131,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:133,1"
      Dst: "[org.locationtech.jts.geom.Geometry].difference(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:137,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:138,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:138,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.IteratedOverlayFunctions].extractPolygonsNonEmpty(java.util.List)"
    functionSourceFile: "org.locationtech.jtslab.IteratedOverlayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.IteratedOverlayFunctions:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.IteratedOverlayFunctions:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:142,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:143,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:143,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:144,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:146,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:149,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.IteratedOverlayFunctions:149,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor"
    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: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:648,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:661"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:663"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:653,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:653,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:658,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:659,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:662,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:662,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].subtract(double)"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(double)"
    - "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].doubleValue()"
    - "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 42
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:223,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.geom.Triangle:223,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(double)"
    - Src: "org.locationtech.jts.geom.Triangle:228,1"
      Dst: "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:228,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(double)"
    - Src: "org.locationtech.jts.geom.Triangle:229,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.geom.Triangle:229,1"
      Dst: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].doubleValue()"
    - Src: "org.locationtech.jts.geom.Triangle:237,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].setOrig(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.Counter].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.Counter"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.Counter:238,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor].<init>()"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXStreamProcessor].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor:128,1"
      Dst: "[org.jdom2.output.support.AbstractStAXStreamProcessor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor].<init>(org.jdom2.output.StAXStreamOutputter$1)"
    functionSourceFile: "org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.StAXStreamOutputter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor:128,1"
      Dst: "[org.jdom2.output.StAXStreamOutputter$DefaultStAXStreamProcessor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$4].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.FocusAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$4:245,1"
      Dst: "[java.awt.event.FocusAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$4].focusLost(java.awt.event.FocusEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.FocusEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].txtDesc_focusLost(java.awt.event.FocusEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$4:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].txtDesc_focusLost(java.awt.event.FocusEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].txtDesc_focusLost(java.awt.event.FocusEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.FocusEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:174,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].values()"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.Ordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.Ordinate:22,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].valueOf(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.Ordinate"
    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: "org.locationtech.jts.io.Ordinate:22,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].<init>(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.Ordinate:22,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].createXY()"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.EnumSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EnumSet].clone()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.Ordinate:49,1"
      Dst: "[java.util.EnumSet].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].createXYZ()"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.EnumSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EnumSet].clone()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.Ordinate:54,1"
      Dst: "[java.util.EnumSet].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].createXYM()"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.EnumSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EnumSet].clone()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.Ordinate:59,1"
      Dst: "[java.util.EnumSet].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].createXYZM()"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.EnumSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EnumSet].clone()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.Ordinate:64,1"
      Dst: "[java.util.EnumSet].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.Ordinate].$values()"
    functionSourceFile: "org.locationtech.jts.io.Ordinate"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 0
    returnType: "org.locationtech.jts.io.Ordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:79,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:90,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:105,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.located.LocatedElement:121,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].getLine()"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].getColumn()"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setLine(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.located.LocatedElement].setColumn(int)"
    functionSourceFile: "org.jdom2.located.LocatedElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].<init>(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:38,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].<init>(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:39,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].buildIndex()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:52,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].buildIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].buildIndex()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.HoleAssigner:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:56,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:57,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:57,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:58,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:58,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHoleToShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.HoleAssigner:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:69,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:70,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHoleToShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHoleToShell(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].findShellContaining(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].addHole(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.HoleAssigner:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.HoleAssigner:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:76,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].findShellContaining(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:78,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].addHole(org.locationtech.jts.operation.polygonize.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].queryOverlappingShells(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:84,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.HoleAssigner].findShellContaining(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.HoleAssigner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].queryOverlappingShells(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].findEdgeRingContaining(org.locationtech.jts.operation.polygonize.EdgeRing,java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:103,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:104,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].queryOverlappingShells(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.polygonize.HoleAssigner:105,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].findEdgeRingContaining(org.locationtech.jts.operation.polygonize.EdgeRing,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].findVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].getVertices(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:37,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].getVertices(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].getVertices(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].getVertices()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].getVertices()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder].getIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.Octant].octant(double,double)"
    functionSourceFile: "org.locationtech.jts.noding.Octant"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.Octant:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.Octant:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.Octant:40,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:42,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 18
  - functionName: "[org.locationtech.jts.noding.Octant].octant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.Octant"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.Octant].octant(double,double)"
    - "[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: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.Octant:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:83"
        BranchSideFuncs:
        - "octant(double,double)"
    - Branch String: "org.locationtech.jts.noding.Octant:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.Octant:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.Octant:83"
        BranchSideFuncs:
        - "octant(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.Octant:83,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.noding.Octant:84,1"
      Dst: "[org.locationtech.jts.noding.Octant].octant(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.Octant].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.Octant"
    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: "org.locationtech.jts.noding.Octant:87,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Intersection].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.Intersection"
    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: "org.locationtech.jts.algorithm.Intersection:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Intersection"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Intersection:47,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Intersection].intersectionFP(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Intersection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 158
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Intersection:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Intersection:113,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.algorithm.Intersection:113,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.algorithm.Intersection:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 16
    BBCount: 42
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Intersection].lineSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Intersection"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 28
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Intersection:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:139"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:153"
        BranchSideFuncs:
        - "intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:153"
        BranchSideFuncs:
        - "intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:160"
        BranchSideFuncs:
        - "pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Intersection:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:165"
        BranchSideFuncs:
        - "copy()"
      - BranchSide: "org.locationtech.jts.algorithm.Intersection:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Intersection:137,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Intersection:138,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.Intersection:154,1"
      Dst: "[org.locationtech.jts.algorithm.Intersection].intersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Intersection:161,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToLinePerpendicular(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jts.awt.PointShapeFactory$Cross].<init>()"
    functionSourceFile: "org.locationtech.jts.awt.PointShapeFactory$Cross"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Cross:280,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.PointShapeFactory$Cross].<init>(double)"
    functionSourceFile: "org.locationtech.jts.awt.PointShapeFactory$Cross"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Cross:290,1"
      Dst: "[org.locationtech.jts.awt.PointShapeFactory$BasePointShapeFactory].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.PointShapeFactory$Cross].createPoint(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jts.awt.PointShapeFactory$Cross"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Shape"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Cross:302,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Cross:307,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Cross:312,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Cross:313,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jts.awt.PointShapeFactory$Cross:314,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.OrientationTransformer].<init>()"
    functionSourceFile: "org.locationtech.jts.io.geojson.OrientationTransformer"
    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: "org.locationtech.jts.io.geojson.OrientationTransformer:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.geojson.OrientationTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:44,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:45,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:45,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:48,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:51,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.io.geojson.OrientationTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:67,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:68,1"
      Dst: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:70,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:71,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:72,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:72,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:75,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:76,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:76,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.geojson.OrientationTransformer].transformCCW(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.io.geojson.OrientationTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LinearRing].reverse()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.geojson.OrientationTransformer:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.geojson.OrientationTransformer:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:93,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:93,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:97,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].reverse()"
    - Src: "org.locationtech.jts.io.geojson.OrientationTransformer:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].<init>(org.jdom2.transform.JDOMResult)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.transform.JDOMResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.helpers.XMLFilterImpl].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:435,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].getResult()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$FragmentHandler].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:448"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:450,1"
      Dst: "[org.jdom2.transform.JDOMResult$FragmentHandler].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    - "[org.jdom2.transform.JDOMResult].getFactory()"
    - "[org.jdom2.transform.JDOMResult$FragmentHandler].<init>(org.jdom2.JDOMFactory)"
    - "[org.xml.sax.helpers.XMLFilterImpl].setContentHandler(org.xml.sax.ContentHandler)"
    - "[org.xml.sax.helpers.XMLFilterImpl].startDocument()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:488,1"
      Dst: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:494,1"
      Dst: "[org.jdom2.transform.JDOMResult].getFactory()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:494,1"
      Dst: "[org.jdom2.transform.JDOMResult$FragmentHandler].<init>(org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:495,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].setContentHandler(org.xml.sax.ContentHandler)"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:498,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult].getFactory()"
    functionSourceFile: "org.jdom2.transform.JDOMResult"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$FragmentHandler].<init>(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$FragmentHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    - "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].pushElement(org.jdom2.Element)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:370,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:363,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.transform.JDOMResult$FragmentHandler:375,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].pushElement(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.input.sax.TextBuffer].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    - "[org.jdom2.input.sax.SAXHandler].reset()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:207"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:206,1"
      Dst: "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:129,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:133,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:136,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:139,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:207,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:208,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.input.sax.TextBuffer].<init>()"
    functionSourceFile: "org.jdom2.input.sax.TextBuffer"
    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: "org.jdom2.input.sax.TextBuffer:88,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DefaultJDOMFactory].<init>()"
    functionSourceFile: "org.jdom2.DefaultJDOMFactory"
    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: "org.jdom2.DefaultJDOMFactory:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].reset()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - "[java.util.List].clear()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[org.jdom2.input.sax.TextBuffer].clear()"
    - "[java.util.Map].clear()"
    - "[org.jdom2.input.sax.SAXHandler].resetSubCLass()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:228,1"
      Dst: "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - Src: "org.jdom2.input.sax.SAXHandler:238,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.jdom2.input.sax.SAXHandler:239,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:240,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].clear()"
    - Src: "org.jdom2.input.sax.SAXHandler:241,1"
      Dst: "[java.util.Map].clear()"
    - Src: "org.jdom2.input.sax.SAXHandler:244,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].resetSubCLass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:204,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Element:204,1"
      Dst: "[org.jdom2.Element].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].pushElement(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:256"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:257,1"
      Dst: "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - Src: "org.jdom2.input.sax.SAXHandler:261,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    - "[org.jdom2.transform.JDOMResult].getFactory()"
    - "[org.jdom2.transform.JDOMResult$FragmentHandler].<init>(org.jdom2.JDOMFactory)"
    - "[org.xml.sax.helpers.XMLFilterImpl].setContentHandler(org.xml.sax.ContentHandler)"
    - "[org.xml.sax.helpers.XMLFilterImpl].startDocument()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:488,1"
      Dst: "[org.jdom2.transform.JDOMResult].setResult(java.util.List)"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:494,1"
      Dst: "[org.jdom2.transform.JDOMResult].getFactory()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:494,1"
      Dst: "[org.jdom2.transform.JDOMResult$FragmentHandler].<init>(org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:495,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].setContentHandler(org.xml.sax.ContentHandler)"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:498,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startElement(java.lang.String,java.lang.String,java.lang.String,org.xml.sax.Attributes)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "org.xml.sax.Attributes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.xml.sax.helpers.XMLFilterImpl].startElement(java.lang.String,java.lang.String,java.lang.String,org.xml.sax.Attributes)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:528,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:529,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].startElement(java.lang.String,java.lang.String,java.lang.String,org.xml.sax.Attributes)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startPrefixMapping(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.xml.sax.helpers.XMLFilterImpl].startPrefixMapping(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:539,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:540,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].startPrefixMapping(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].characters(char[],int,int)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.xml.sax.helpers.XMLFilterImpl].characters(char[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:550,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:551,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].characters(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ignorableWhitespace(char[],int,int)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.xml.sax.helpers.XMLFilterImpl].ignorableWhitespace(char[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:561,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:562,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].ignorableWhitespace(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].processingInstruction(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.xml.sax.helpers.XMLFilterImpl].processingInstruction(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:572,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:573,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].processingInstruction(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].skippedEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.xml.sax.helpers.XMLFilterImpl].skippedEntity(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:582,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:583,1"
      Dst: "[org.xml.sax.helpers.XMLFilterImpl].skippedEntity(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDTD(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.jdom2.input.sax.SAXHandler].startDTD(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:607,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:608,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].startDTD(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].startDTD(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:903"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:900"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:901,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:903,1"
      Dst: "[org.jdom2.JDOMFactory].docType(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:907,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].endDTD()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].endDTD()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:619,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].endDTD()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].endDTD()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].getDocType()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:918,1"
      Dst: "[org.jdom2.Document].getDocType()"
    - Src: "org.jdom2.input.sax.SAXHandler:918,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.sax.SAXHandler:918,1"
      Dst: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.jdom2.input.sax.SAXHandler].startEntity(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:634,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:635,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].startEntity(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].startEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:928"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:929"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:928"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:933"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:934"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:940"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:939"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:940"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:944"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:974"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:973"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:948"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:960"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:959"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:960"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:971"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:970"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:962"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:960"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:934,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:947,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:961,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:962,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(int,int,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:969,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    - Src: "org.jdom2.input.sax.SAXHandler:969,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 21
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].endEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].endEntity(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:648,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].endEntity(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].endEntity(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:979"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:983"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:984"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:987"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:986"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:984,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startCDATA()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.jdom2.input.sax.SAXHandler].startCDATA()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:659,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:660,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].startCDATA()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].startCDATA()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:994"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:997"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:996"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].endCDATA()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].endCDATA()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:671,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].endCDATA()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].endCDATA()"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1005"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1008"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1007"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1009,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].comment(char[],int,int)"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - "[org.jdom2.input.sax.SAXHandler].comment(char[],int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:687,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:688,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].comment(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMResult$DocumentBuilder].ensureInitialization()"
    functionSourceFile: "org.jdom2.transform.JDOMResult$DocumentBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMResult$DocumentBuilder:464"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:467"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMResult$DocumentBuilder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMResult$DocumentBuilder:465,1"
      Dst: "[org.jdom2.transform.JDOMResult$DocumentBuilder].startDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.input.sax.SAXHandler].comment(char[],int,int)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - "[java.lang.String].<init>(char[],int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[org.xml.sax.Locator].getLineNumber()"
    - "[org.xml.sax.Locator].getColumnNumber()"
    - "[org.jdom2.JDOMFactory].comment(int,int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:1032"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1035"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1034"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1038"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1041"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1038"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1041"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1038"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1041"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1042"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1053"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1052"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1042"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1053"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1052"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1043"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1042"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.sax.SAXHandler:1047"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1050"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:1049"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:1035,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].flushCharacters()"
    - Src: "org.jdom2.input.sax.SAXHandler:1037,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    - Src: "org.jdom2.input.sax.SAXHandler:1039,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1042,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.xml.sax.Locator].getLineNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.xml.sax.Locator].getColumnNumber()"
    - Src: "org.jdom2.input.sax.SAXHandler:1043,1"
      Dst: "[org.jdom2.JDOMFactory].comment(int,int,java.lang.String)"
    - Src: "org.jdom2.input.sax.SAXHandler:1048,1"
      Dst: "[org.jdom2.JDOMFactory].addContent(org.jdom2.Parent,org.jdom2.Content)"
    - Src: "org.jdom2.input.sax.SAXHandler:1050,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].getCurrentElement()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17:221,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaderJAXPFactory].<init>(java.lang.String,java.lang.ClassLoader,boolean)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderJAXPFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[javax.xml.parsers.SAXParserFactory].newInstance(java.lang.String,java.lang.ClassLoader)"
    - "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaderJAXPFactory:93,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.input.sax.XMLReaderJAXPFactory:94,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newInstance(java.lang.String,java.lang.ClassLoader)"
    - Src: "org.jdom2.input.sax.XMLReaderJAXPFactory:95,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - Src: "org.jdom2.input.sax.XMLReaderJAXPFactory:96,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaderJAXPFactory].createXMLReader()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderJAXPFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.xml.sax.XMLReader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - "[javax.xml.parsers.SAXParser].getXMLReader()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaderJAXPFactory:103,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - Src: "org.jdom2.input.sax.XMLReaderJAXPFactory:103,1"
      Dst: "[javax.xml.parsers.SAXParser].getXMLReader()"
    - Src: "org.jdom2.input.sax.XMLReaderJAXPFactory:105,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaderJAXPFactory].isValidating()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaderJAXPFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:42,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:43,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].distance(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:53,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:55,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:58,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].distance(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:62,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:62,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].nearestPoints(org.locationtech.jts.geom.Point)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:74,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].init()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:75,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint].isInArea(org.locationtech.jts.geom.Point)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:76,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:77,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedDistanceToPoint:79,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].nearestPoints(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:64,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(java.util.Collection)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].snapIntersections(java.util.List)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:84,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:85,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].snapIntersections(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].seedSnapIndex(java.util.Collection)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(org.locationtech.jts.noding.SegmentString)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:97"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "snapVertices(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:90,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].seedSnapIndex(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:93,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:93,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:94,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:94,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].seedSnapIndex(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    functionUses: 1
    ICount: 26
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:122"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:112,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:112,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:112,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:113,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:117,1"
      Dst: "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:119,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].quasirandom(double,double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:173,1"
      Dst: "[org.locationtech.jts.math.MathUtil].quasirandom(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingPointIndex"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:58,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingPointIndex:59,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 10
    returnType: "org.locationtech.jts.noding.NodedSegmentString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].snap(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:125,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:125,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].snap(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:126,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:126,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snap(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:134"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:130,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:132,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:133,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:135,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:80,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:69,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].<init>(org.locationtech.jts.noding.NodedSegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snapIntersections(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 10
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].<init>(double,org.locationtech.jts.noding.snap.SnappingPointIndex)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:148,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].<init>(double,org.locationtech.jts.noding.snap.SnappingPointIndex)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:153,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:154,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:155,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].<init>(double,org.locationtech.jts.noding.snap.SnappingPointIndex)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.noding.snap.SnappingPointIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingIntersectionAdder:31,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:68,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 10
    ICount: 12
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexNoder:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:87"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexNoder:86"
        BranchSideFuncs:
        - "intersectChains()"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:85,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].add(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:87,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].intersectChains()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 9
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:78,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getNodedSubstrings(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingNoder].seedSnapIndex(java.util.Collection)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(org.locationtech.jts.noding.SegmentString)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:97"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "snapVertices(org.locationtech.jts.noding.SegmentString)"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:90,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].seedSnapIndex(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:93,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:93,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:94,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:94,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].seedSnapIndex(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    functionUses: 1
    ICount: 26
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:122"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:112,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:112,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:112,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:113,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:117,1"
      Dst: "[org.locationtech.jts.math.MathUtil].quasirandom(double)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:119,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snapVertices(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 10
    returnType: "org.locationtech.jts.noding.NodedSegmentString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].snap(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:125,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:125,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].snap(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:126,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:126,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snap(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snap.SnappingNoder:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snap.SnappingNoder:134"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:130,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:132,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingPointIndex].snap(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:133,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:135,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snap.SnappingNoder].snapIntersections(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.snap.SnappingNoder"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 10
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].<init>(double,org.locationtech.jts.noding.snap.SnappingPointIndex)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:148,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].<init>(double,org.locationtech.jts.noding.snap.SnappingPointIndex)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:153,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector,double)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:154,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.snap.SnappingNoder:155,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:52,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:69,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].getCommonCoordinate()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 2
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:88,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:91,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:105,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:106,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Root].<init>()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Root"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Root:32,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Root].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Root"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - "[org.locationtech.jts.index.quadtree.Node].createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Root].insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 1
    ICount: 25
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Root:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:50"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:49"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope()"
    - Branch String: "org.locationtech.jts.index.quadtree.Root:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:57"
        BranchSideFuncs:
        - "createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:56"
        BranchSideFuncs:
        - "createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.quadtree.Root:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:64"
        BranchSideFuncs:
        - "createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:63"
        BranchSideFuncs:
        - "insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Root:40,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].getSubnodeIndex(org.locationtech.jts.geom.Envelope,double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Root:43,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.quadtree.Root:56,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - Src: "org.locationtech.jts.index.quadtree.Root:56,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:57,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].createExpanded(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:64,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.quadtree.Root].insertContained(org.locationtech.jts.index.quadtree.Node,org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Root"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.quadtree.Node"
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.index.quadtree.IntervalSize].isZeroWidth(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.index.quadtree.Node].find(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.Node].getNode(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.Root:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:86"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:85"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.index.quadtree.Root:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:88"
        BranchSideFuncs:
        - "find(org.locationtech.jts.geom.Envelope)"
      - BranchSide: "org.locationtech.jts.index.quadtree.Root:87"
        BranchSideFuncs:
        - "getNode(org.locationtech.jts.geom.Envelope)"
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Root:76,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getEnvelope()"
    - Src: "org.locationtech.jts.index.quadtree.Root:76,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:76,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.quadtree.Root:82,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.quadtree.Root:82,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.quadtree.Root:82,1"
      Dst: "[org.locationtech.jts.index.quadtree.IntervalSize].isZeroWidth(double,double)"
    - Src: "org.locationtech.jts.index.quadtree.Root:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.quadtree.Root:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.quadtree.Root:86,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].find(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:88,1"
      Dst: "[org.locationtech.jts.index.quadtree.Node].getNode(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.quadtree.Root:89,1"
      Dst: "[org.locationtech.jts.index.quadtree.NodeBase].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.quadtree.Root].isSearchMatch(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Root"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].<init>(org.xml.sax.ContentHandler,org.xml.sax.ErrorHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ext.LexicalHandler,org.xml.sax.ext.DeclHandler,boolean,boolean,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 10
    argTypes:
    - "org.xml.sax.ContentHandler"
    - "org.xml.sax.ErrorHandler"
    - "org.xml.sax.DTDHandler"
    - "org.xml.sax.EntityResolver"
    - "org.xml.sax.ext.LexicalHandler"
    - "org.xml.sax.ext.DeclHandler"
    - "boolean"
    - "boolean"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.support.SAXTarget$SAXLocator].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.SAXTarget:193,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.support.SAXTarget:202,1"
      Dst: "[org.jdom2.output.support.SAXTarget$SAXLocator].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].getContentHandler()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.ContentHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].getErrorHandler()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.ErrorHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].getDTDHandler()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.DTDHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].getEntityResolver()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.EntityResolver"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].getLexicalHandler()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.ext.LexicalHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].getDeclHandler()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.xml.sax.ext.DeclHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].isDeclareNamespaces()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].isReportDTDEvents()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].getLocator()"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.support.SAXTarget$SAXLocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.ObjectCounter].<init>()"
    functionSourceFile: "org.locationtech.jts.util.ObjectCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.ObjectCounter:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.ObjectCounter:26,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.ObjectCounter].add(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.ObjectCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.util.ObjectCounter$Counter].<init>(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.util.ObjectCounter$Counter].increment()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.ObjectCounter:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.ObjectCounter:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.ObjectCounter:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.ObjectCounter:33,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.util.ObjectCounter:35,1"
      Dst: "[org.locationtech.jts.util.ObjectCounter$Counter].<init>(int)"
    - Src: "org.locationtech.jts.util.ObjectCounter:35,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.util.ObjectCounter:37,1"
      Dst: "[org.locationtech.jts.util.ObjectCounter$Counter].increment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.ObjectCounter$Counter].<init>(int)"
    functionSourceFile: "org.locationtech.jts.util.ObjectCounter$Counter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.ObjectCounter$Counter:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.ObjectCounter$Counter].increment()"
    functionSourceFile: "org.locationtech.jts.util.ObjectCounter$Counter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.ObjectCounter].count(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.ObjectCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.util.ObjectCounter$Counter].count()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.ObjectCounter:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.ObjectCounter:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.ObjectCounter:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.ObjectCounter:44,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.util.ObjectCounter:48,1"
      Dst: "[org.locationtech.jts.util.ObjectCounter$Counter].count()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.ObjectCounter$Counter].count()"
    functionSourceFile: "org.locationtech.jts.util.ObjectCounter$Counter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.GridLayout].<init>(int,int)"
    - "[javax.swing.JButton].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:64,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:46,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:47,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:50,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:53,1"
      Dst: "[java.awt.GridLayout].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:56,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:60,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:61,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:68,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[java.awt.GridLayout].<init>(int,int)"
    - "[java.awt.GridLayout].setVgap(int)"
    - "[java.awt.GridLayout].setHgap(int)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - "[javax.swing.Box].createVerticalBox()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 108
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:74,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:76,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:76,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$1].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:98,1"
      Dst: "[java.awt.GridLayout].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:99,1"
      Dst: "[java.awt.GridLayout].setVgap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:100,1"
      Dst: "[java.awt.GridLayout].setHgap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:102,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:107,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:109,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:110,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:111,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:119,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:120,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:122,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:124,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:124,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$4].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:142,1"
      Dst: "[javax.swing.Box].createVerticalBox()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:143,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:143,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:152,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setRunningTime(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jts.util.Memory].usedTotalString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:173,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:175,1"
      Dst: "[org.locationtech.jts.util.Memory].usedTotalString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jts.util.Memory].usedTotalString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:173,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:175,1"
      Dst: "[org.locationtech.jts.util.Memory].usedTotalString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:190,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:196,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResultDisplayString(org.locationtech.jts.geom.Geometry)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:202,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResultDisplayString(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:203,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:204,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:209,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:210,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setError(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:215,1"
      Dst: "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:216,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:217,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].rCopyButton_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ActionEvent].getModifiers()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].copyResult(boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:221,1"
      Dst: "[java.awt.event.ActionEvent].getModifiers()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].copyResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].copyResult(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:409,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - "[java.lang.Object].toString()"
    - "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryTransferable"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryTransferable:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].copyToTestButton_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].copyResultToTest()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].copyResultToTest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].copyResultToTest()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:318,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:322,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:323,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.DefaultListModel].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestListPanel:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:159,1"
      Dst: "[javax.swing.DefaultListModel].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:163,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:164,1"
      Dst: "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LoadTestCasesDialog$1].<init>(org.locationtech.jtstest.testbuilder.LoadTestCasesDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LoadTestCasesDialog$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LoadTestCasesDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LoadTestCasesDialog$1:69,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LoadTestCasesDialog$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LoadTestCasesDialog$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LoadTestCasesDialog].btnCancel_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LoadTestCasesDialog$1:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LoadTestCasesDialog].btnCancel_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LoadTestCasesDialog].btnCancel_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LoadTestCasesDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LoadTestCasesDialog:187,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.EdgeRayFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtslab.EdgeRayFunctions"
    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: "org.locationtech.jtslab.EdgeRayFunctions:18,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.EdgeRayFunctions].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.EdgeRayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayArea].area(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:20,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayArea].area(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayArea].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayArea].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.edgeray.EdgeRayArea].getArea()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:21,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayArea].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:22,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayArea].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayArea].getArea()"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayArea:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:32"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:31"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayArea:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayArea:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:33,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:33,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:34,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:39,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:46,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:46,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:46,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRay"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 5
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRay:53,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRay"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRay:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRay:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRay:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRay:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRay:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRay:62,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtslab.EdgeRayFunctions].intersectionArea(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.EdgeRayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:24,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:25,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:43,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:44,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:50,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:55,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:59,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:62,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:79,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:80,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:94,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:96,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:99,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:132,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:132,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRay"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRay:89,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRay"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRay:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRay:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRay:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRay:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRay:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRay:62,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:116,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:117,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:118,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:120,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:123,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:124,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 13
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:82"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "query(double,double,org.locationtech.jts.index.ItemVisitor)"
        - "getLocation()"
        - "<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:81,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].createIndex()"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:83,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:85,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].<init>(org.locationtech.jts.algorithm.RayCrossingCounter)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:86,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$IntervalIndexedGeometry].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRay"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRay:86,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRay"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 5
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRay:53,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.EdgeRayFunctions].checkIntersectionArea(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.EdgeRayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.EdgeRayFunctions].intersectionArea(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:29,1"
      Dst: "[org.locationtech.jtslab.EdgeRayFunctions].intersectionArea(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:31,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:31,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:33,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:33,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.EdgeRayFunctions].intersectionArea(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.EdgeRayFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:24,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.EdgeRayFunctions:25,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ExceptionFormatter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.util.ExceptionFormatter"
    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: "org.locationtech.jtstest.util.ExceptionFormatter:15,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ExceptionFormatter].getFullString(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.util.ExceptionFormatter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:19,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ExceptionFormatter].condense(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.ExceptionFormatter"
    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.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.ExceptionFormatter:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ExceptionFormatter:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ExceptionFormatter:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:25,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:27,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:27,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:27,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:29,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1:223,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$1:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getMetaFunction()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].getMetaFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.SegmentStyle].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paint(int,java.awt.geom.Point2D,java.awt.geom.Point2D,int,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "int"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidpointArrow(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidArrowHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidpointArrow(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidArrowHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidpointArrow(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:65,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:66,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:71,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:72,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:72,1"
      Dst: "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:75,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].equals(java.lang.Object)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:203,1"
      Dst: "[java.awt.geom.Point2D].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:206,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:207,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:209,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.GeneralPath"
    argCount: 5
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.GeneralPath"
    argCount: 5
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].vector(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].fin(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Path2D$Float].moveTo(double,double)"
    - "[java.awt.geom.Path2D$Float].lineTo(double,double)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:82,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].vector(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].fin(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:86,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:87,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:86,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:88,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].vector(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.Point2D"
    argCount: 3
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:36,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:37,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:38,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:39,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].fin(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.Point2D"
    argCount: 4
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].subtract(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].multiply(java.awt.geom.Point2D,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].add(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.AffineTransform].<init>()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.AffineTransform].rotate(double,double,double)"
    - "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:98,1"
      Dst: "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].subtract(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].multiply(java.awt.geom.Point2D,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].add(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:102,1"
      Dst: "[java.awt.geom.AffineTransform].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:103,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:104,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:103,1"
      Dst: "[java.awt.geom.AffineTransform].rotate(double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle:106,1"
      Dst: "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].subtract(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:24,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:24,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:24,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].multiply(java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:32,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:32,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:32,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].add(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:28,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:28,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:28,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidArrowHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHeadHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double,double)"
    - "[java.awt.geom.Path2D].closePath()"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:131,1"
      Dst: "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:138,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:142,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:143,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:143,1"
      Dst: "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHeadHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:153,1"
      Dst: "[java.awt.geom.Path2D].closePath()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:155,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:156,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHeadHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.GeneralPath"
    argCount: 6
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.lang.Math].sin(double)"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:162,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:163,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:165,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:185,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:190,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:191,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:192,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidpointArrow(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:65,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:66,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:71,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:72,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:72,1"
      Dst: "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowLineEndStyle].arrowheadPath(java.awt.geom.Point2D,java.awt.geom.Point2D,java.awt.geom.Point2D,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:75,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintOffsetArrow(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHalfOffset(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:92,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:94,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHalfOffset(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:97,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHalfOffset(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.GeneralPath"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:101,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:102,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:104,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:118,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:119,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:120,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHalfOffset(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.GeneralPath"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:101,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:102,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:104,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:118,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:119,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:120,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].paintMidArrowHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHeadHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double,double)"
    - "[java.awt.geom.Path2D].closePath()"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:131,1"
      Dst: "[java.awt.geom.Point2D].distance(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:138,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:142,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:143,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:143,1"
      Dst: "[java.awt.geom.Point2D$Float].<init>(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHeadHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:153,1"
      Dst: "[java.awt.geom.Path2D].closePath()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:155,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:156,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].arrowHeadHalf(java.awt.geom.Point2D,java.awt.geom.Point2D,double,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.geom.GeneralPath"
    argCount: 6
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.lang.Math].sin(double)"
    - "[java.awt.geom.GeneralPath].<init>()"
    - "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    functionUses: 0
    ICount: 72
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:162,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:163,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:165,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:185,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:190,1"
      Dst: "[java.awt.geom.GeneralPath].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:191,1"
      Dst: "[java.awt.geom.Path2D$Float].moveTo(float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:192,1"
      Dst: "[java.awt.geom.Path2D$Float].lineTo(float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle].isTooSmallToRender(java.awt.geom.Point2D,java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].equals(java.lang.Object)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:203,1"
      Dst: "[java.awt.geom.Point2D].equals(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:206,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:207,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.ArrowSegmentStyle:209,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PointExtracter"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PointExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PointExtracter:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:45"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PointExtracter:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:50"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.GeometryFilter)"
        - "<init>(java.util.List)"
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PointExtracter:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:46,1"
      Dst: "[org.locationtech.jts.geom.util.PointExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PointExtracter"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PointExtracter:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:62"
        BranchSideFuncs:
        - "getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PointExtracter:61,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:63,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PointExtracter:63,1"
      Dst: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.PointExtracter].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PointExtracter"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PointExtracter:71,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PointExtracter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PointExtracter"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PointExtracter:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.PointExtracter:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PointExtracter:77,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$13].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$13:347,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$13].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].bPasteButton_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$13:349,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].bPasteButton_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].bPasteButton_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].paste(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:461,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].paste(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].paste(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].pasteGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:466,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].pasteGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:470,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].pasteGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getContents(java.awt.datatransfer.Clipboard)"
    - "[java.awt.datatransfer.Transferable].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - "[java.awt.datatransfer.Transferable].getTransferData(java.awt.datatransfer.DataFlavor)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:201,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:202,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getContents(java.awt.datatransfer.Clipboard)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:205,1"
      Dst: "[java.awt.datatransfer.Transferable].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:206,1"
      Dst: "[java.awt.datatransfer.Transferable].getTransferData(java.awt.datatransfer.DataFlavor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getContents(java.awt.datatransfer.Clipboard)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.datatransfer.Transferable"
    argCount: 1
    argTypes:
    - "java.awt.datatransfer.Clipboard"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.datatransfer.Clipboard].getContents(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:219,1"
      Dst: "[java.awt.datatransfer.Clipboard].getContents(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:81"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.PrecisionModel)"
        - "getPrecisionModel()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.util.ExceptionFormatter].condense(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:198,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:200,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:201,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[org.locationtech.jtstest.util.ExceptionFormatter].condense(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:204,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:105,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:106,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:107,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:109,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:110,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:112,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:113,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:115,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.ExceptionFormatter].condense(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.ExceptionFormatter"
    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.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.ExceptionFormatter:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ExceptionFormatter:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ExceptionFormatter:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:25,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:27,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:27,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:27,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ExceptionFormatter:29,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:61,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:69,1"
      Dst: "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:70,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor:75,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].isCCW(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:62,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:41,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:42,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].longestSideLength(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:165,1"
      Dst: "[org.locationtech.jts.geom.Triangle].longestSideLength(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor].getTriangles()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation$HullTriVisitor"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.FilterIterator].<init>(org.jdom2.DescendantIterator,org.jdom2.filter.Filter)"
    functionSourceFile: "org.jdom2.FilterIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DescendantIterator"
    - "org.jdom2.filter.Filter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.FilterIterator:78"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:82"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.FilterIterator:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.FilterIterator:79,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.FilterIterator].iterator()"
    functionSourceFile: "org.jdom2.FilterIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator].iterator()"
    - "[org.jdom2.FilterIterator].<init>(org.jdom2.DescendantIterator,org.jdom2.filter.Filter)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.FilterIterator:88,1"
      Dst: "[org.jdom2.DescendantIterator].iterator()"
    - Src: "org.jdom2.FilterIterator:88,1"
      Dst: "[org.jdom2.FilterIterator].<init>(org.jdom2.DescendantIterator,org.jdom2.filter.Filter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DescendantIterator].iterator()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.DescendantIterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator].<init>(org.jdom2.Parent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:110,1"
      Dst: "[org.jdom2.DescendantIterator].<init>(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.FilterIterator].<init>(org.jdom2.DescendantIterator,org.jdom2.filter.Filter)"
    functionSourceFile: "org.jdom2.FilterIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DescendantIterator"
    - "org.jdom2.filter.Filter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.FilterIterator:78"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:82"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.FilterIterator:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.FilterIterator:79,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.FilterIterator].hasNext()"
    functionSourceFile: "org.jdom2.FilterIterator"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator:org.jdom2.filter.PassThroughFilter].hasNext()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.filter.NegateFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.ElementFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.ContentFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.TextOnlyFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.AttributeFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.OrFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.ClassFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.AndFilter].filter(java.lang.Object)"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.filter.Filter].filter(java.lang.Object)"
    functionUses: 192
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.jdom2.FilterIterator:96"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:100"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:99"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "org.jdom2.FilterIterator:100"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:108"
        BranchSideFuncs:
        - "next()"
        - "filter(java.lang.Object)"
      - BranchSide: "org.jdom2.FilterIterator:107"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.FilterIterator:103"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:107"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.FilterIterator:100,1"
      Dst: "[org.jdom2.DescendantIterator].hasNext()"
    - Src: "org.jdom2.FilterIterator:101,1"
      Dst: "[org.jdom2.DescendantIterator].next()"
    - Src: "org.jdom2.FilterIterator:102,1"
      Dst: "[org.jdom2.filter.Filter].filter(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.jdom2.DescendantIterator].hasNext()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 192
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DescendantIterator].next()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 2
    returnType: "org.jdom2.Content"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.Element].getContentSize()"
    - "[org.jdom2.Element].getContent()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 196
    ICount: 64
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "org.jdom2.DescendantIterator:131"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:134"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:133"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:134"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:139"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:138"
        BranchSideFuncs:
        - "getContentSize()"
        - "next()"
    - Branch String: "org.jdom2.DescendantIterator:143"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:153"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:143"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:153"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:147"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:150"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
      - BranchSide: "org.jdom2.DescendantIterator:149"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:154"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:159"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:160"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:172"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:168"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:171"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:139,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.DescendantIterator:143,1"
      Dst: "[org.jdom2.Element].getContentSize()"
    - Src: "org.jdom2.DescendantIterator:146,1"
      Dst: "[org.jdom2.Element].getContent()"
    - Src: "org.jdom2.DescendantIterator:146,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.DescendantIterator:148,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - Src: "org.jdom2.DescendantIterator:154,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.jdom2.FilterIterator].next()"
    functionSourceFile: "org.jdom2.FilterIterator"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 195
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.FilterIterator:113"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:117"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.FilterIterator:113,1"
      Dst: "[org.jdom2.FilterIterator].hasNext()"
    - Src: "org.jdom2.FilterIterator:114,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.FilterIterator].hasNext()"
    functionSourceFile: "org.jdom2.FilterIterator"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator:org.jdom2.filter.PassThroughFilter].hasNext()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.filter.NegateFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.ElementFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.ContentFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.TextOnlyFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.AttributeFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.OrFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.ClassFilter].filter(java.lang.Object)"
    - "[org.jdom2.filter.AndFilter].filter(java.lang.Object)"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.filter.Filter].filter(java.lang.Object)"
    functionUses: 192
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.jdom2.FilterIterator:96"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:100"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:99"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "org.jdom2.FilterIterator:100"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:108"
        BranchSideFuncs:
        - "next()"
        - "filter(java.lang.Object)"
      - BranchSide: "org.jdom2.FilterIterator:107"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.FilterIterator:103"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:107"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.FilterIterator:100,1"
      Dst: "[org.jdom2.DescendantIterator].hasNext()"
    - Src: "org.jdom2.FilterIterator:101,1"
      Dst: "[org.jdom2.DescendantIterator].next()"
    - Src: "org.jdom2.FilterIterator:102,1"
      Dst: "[org.jdom2.filter.Filter].filter(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.jdom2.FilterIterator].remove()"
    functionSourceFile: "org.jdom2.FilterIterator"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.DescendantIterator].remove()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.FilterIterator:125"
      Branch Sides:
      - BranchSide: "org.jdom2.FilterIterator:131"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.FilterIterator:130"
        BranchSideFuncs:
        - "remove()"
    Callsites:
    - Src: "org.jdom2.FilterIterator:126,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.jdom2.FilterIterator:132,1"
      Dst: "[org.jdom2.DescendantIterator].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.DescendantIterator].remove()"
    functionSourceFile: "org.jdom2.DescendantIterator"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$CLListIterator].remove()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].remove()"
    - "[org.jdom2.ContentList$CLIterator].remove()"
    - "[org.jdom2.AttributeList$ALIterator].remove()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].remove()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].remove()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].remove()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].remove()"
    - "[org.jdom2.FilterIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].remove()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].remove()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].remove()"
    - "[org.jdom2.ContentList$FilterListIterator].remove()"
    - "[org.jdom2.DescendantIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[java.util.Iterator].remove()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 3
    ICount: 30
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "org.jdom2.DescendantIterator:190"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:191"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:190"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:196"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:197"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:205"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.DescendantIterator:202"
      Branch Sides:
      - BranchSide: "org.jdom2.DescendantIterator:205"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.DescendantIterator:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.DescendantIterator:186,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "org.jdom2.DescendantIterator:190,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].<init>(double,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapTransformer"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:236,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].<init>(double,org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:242,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapTransformer"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].snapLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:250,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:251,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].snapLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:252,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:252,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].snapLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapTransformer"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].setAllowSnappingToSourceVertices(boolean)"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapTo(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:257,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:258,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].setAllowSnappingToSourceVertices(boolean)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:259,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapTo(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].isClosed(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:59,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:35,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:61,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].isClosed(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].isClosed(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:72"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:71"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:72,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].setAllowSnappingToSourceVertices(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapTo(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapVertices(org.locationtech.jts.geom.CoordinateList,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapSegments(org.locationtech.jts.geom.CoordinateList,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:83,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:85,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapVertices(org.locationtech.jts.geom.CoordinateList,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:86,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapSegments(org.locationtech.jts.geom.CoordinateList,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:88,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:48,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateList:49,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:50,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapVertices(org.locationtech.jts.geom.CoordinateList,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].findSnapForVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].set(int,java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:114"
        BranchSideFuncs:
        - "findSnapForVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:102"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:102"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:102,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:104,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:105,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].findSnapForVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:108,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:108,1"
      Dst: "[java.util.ArrayList].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].findSnapForVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:121"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:120,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapSegments(org.locationtech.jts.geom.CoordinateList,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].findSegmentIndexToSnap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].add(int,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 27
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:146"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:167"
        BranchSideFuncs:
        - "findSegmentIndexToSnap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:154"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "add(int,org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:156,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].findSegmentIndexToSnap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:164,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:164,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(int,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].findSegmentIndexToSnap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 1
    ICount: 46
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:215"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:208"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:193,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:194,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:202,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.snap.LineStringSnapper:209,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(int,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(int,java.lang.Object)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:176"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:164,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:167,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:168,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:176,1"
      Dst: "[java.util.ArrayList].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].snapLine(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapTransformer"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].setAllowSnappingToSourceVertices(boolean)"
    - "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapTo(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:257,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].<init>(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:258,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].setAllowSnappingToSourceVertices(boolean)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:259,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.LineStringSnapper].snapTo(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.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: "org.locationtech.jtstest.util.ClassUtil:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].getClassname(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[java.lang.String].lastIndexOf(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:26,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.util.ClassUtil:27,1"
      Dst: "[java.lang.String].lastIndexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ClassUtil:28,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.ClassUtil:28,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].getStringArrayClassField(java.lang.Class,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getField(java.lang.String)"
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:34,1"
      Dst: "[java.lang.Class].getField(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ClassUtil:35,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].getStringClassField(java.lang.Class,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredFields()"
    - "[java.lang.Class].getField(java.lang.String)"
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:46,1"
      Dst: "[java.lang.Class].getDeclaredFields()"
    - Src: "org.locationtech.jtstest.util.ClassUtil:47,1"
      Dst: "[java.lang.Class].getField(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ClassUtil:48,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].dynamicCall(java.lang.String,java.lang.String,java.lang.Class[],java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.Class[]"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:61,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ClassUtil:64,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "org.locationtech.jtstest.util.ClassUtil:65,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.util.ClassUtil:67,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "org.locationtech.jtstest.util.ClassUtil:68,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].isNumber(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:76"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].toDouble(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Double"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.Double].valueOf(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:91,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "org.locationtech.jtstest.util.ClassUtil:96,1"
      Dst: "[java.lang.Double].valueOf(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].isDouble(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:101"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:106,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].createFixed()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$1].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].initLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:61,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:48,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].createFixed()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:56,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:243,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$1].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:243,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:412,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].initLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:81"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.PrecisionModel)"
        - "getPrecisionModel()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResultDisplayString(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:89,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].toStringVeryLarge(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:91,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersAll()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].create(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].create(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].create(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.LayerList)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:37,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.LayerList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersLegend()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addLegendLayers(org.locationtech.jtstest.testbuilder.model.LayerList,java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:102,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addLegendLayers(org.locationtech.jtstest.testbuilder.model.LayerList,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addLegendLayers(org.locationtech.jtstest.testbuilder.model.LayerList,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:113,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: "org.locationtech.jtstest.testbuilder.model.LayerList:60,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addLegendLayers(org.locationtech.jtstest.testbuilder.model.LayerList,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:113,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayerIndicators()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createIndicatorLayer()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createIndicatorLayer()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:198,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createIndicatorLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:26,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:23,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:37,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(int,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:135,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:138,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createIndicatorLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(java.lang.String,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addIndicator(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayerIndicators()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayerIndicators()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayerIndicators()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createIndicatorLayer()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createIndicatorLayer()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].add(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:30,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasLayer(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].findLayer(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].findLayer(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].findLayer(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:198,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].findLayer(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].find(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].initLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel,int)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    - "[org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.IndexedGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setSource(org.locationtech.jtstest.testbuilder.model.GeometryContainer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(java.awt.Color,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setGeometryStyle(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].pasteGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.util.ExceptionFormatter].condense(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:198,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:200,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:201,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[org.locationtech.jtstest.util.ExceptionFormatter].condense(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:203,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:204,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadMultipleGeometriesFromFile(int,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - "[org.locationtech.jtstest.util.io.IOUtil].readFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:213,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:215,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:81"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.PrecisionModel)"
        - "getPrecisionModel()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.IOUtil].readFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readShapefile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGMLFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.IOUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.IOUtil:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.IOUtil:40,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:41,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:42,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readShapefile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:44,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:46,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGMLFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:48,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readGeoJSONFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.IOUtil:49,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTFile(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setName(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:77,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadGeometryText(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:221,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:221,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:225,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:226,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:236,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:238,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:105,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:106,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:107,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:109,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:110,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:112,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:113,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:115,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoClear()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:256,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File[])"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadTestCaseList(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrentTestIndex(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:279,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:280,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:281,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:281,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:282,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:283,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:283,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:283,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:285,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:286,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadTestCaseList(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:291,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:292,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:292,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:293,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:296,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrentTestIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadTestCaseList(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadEditList(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:301,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadEditList(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadEditList(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:317"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:308,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:309,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:310,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:313,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:315,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:318,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[java.io.File].isFile()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - "[java.io.File].isDirectory()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseListFromDirectory(java.io.File)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:331"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:322,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:325,1"
      Dst: "[java.io.File].isFile()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:326,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:326,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:328,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:329,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseListFromDirectory(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseListFromDirectory(java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].isDirectory()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[java.io.File].listFiles()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:336,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:336,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:337,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:338,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:338,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:339,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:339,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:340,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:341,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:341,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].createTestCaseList(java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.TestReader].<init>()"
    - "[org.locationtech.jtstest.testrunner.TestReader].createTestRun(java.io.File,int)"
    - "[org.locationtech.jtstest.testrunner.TestReader].getParsingProblems()"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasParseErrors()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getTestCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].<init>(org.locationtech.jtstest.testrunner.TestCase)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:353"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:348,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestReader].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:349,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestReader].createTestRun(java.io.File,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:350,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestReader].getParsingProblems()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:352,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:353,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasParseErrors()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getTestCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:356,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:357,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].<init>(org.locationtech.jtstest.testrunner.TestCase)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:358,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasParseErrors()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:377"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:376"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:376"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:377,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.StringUtil].capitalize(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:398,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].capitalize(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].copyResult(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:409,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].changePrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].saveWKTBeforePMChange()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadWKTAfterPMChange()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:418,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].saveWKTBeforePMChange()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:419,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:420,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadWKTAfterPMChange()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].saveWKTBeforePMChange()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].clear()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].toText()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:431"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:424,1"
      Dst: "[java.util.ArrayList].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:426,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:427,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:428,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toText()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:430,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].loadWKTAfterPMChange()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:444"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:443"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:440"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:436,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:436,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:436,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:437,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:438,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:439,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:441,1"
      Dst: "[org.locationtech.jts.io.WKTReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:441,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerCopy(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].copy(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:561"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:565"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:564"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:561,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:562,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].copy(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:154,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].copy(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:145,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerDelete(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:572"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:571"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:575"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:574"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:569,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:570,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].isTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].addBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].moveUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:587"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:586"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:579"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:584"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:583"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:587"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:590"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:589"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:578,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:579,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].isTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:580,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:581,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].addBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:584,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].moveUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:154,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].isTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:158,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:159,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:150,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].addBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:172,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].moveUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].get(int)"
    - "[java.util.List].set(int,java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:180,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:182,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:183,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerDown(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].moveDown(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].isBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].addTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:593"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:596"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:595"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:596"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:604"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:603"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:597"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:601"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:600"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:593,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:594,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].moveDown(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:597,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].isBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:598,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:599,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].addTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:154,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].moveDown(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].indexOf(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].set(int,java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:188,1"
      Dst: "[java.util.List].indexOf(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:190,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:191,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:192,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].isBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:163,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:164,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:164,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:150,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].addTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(int,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:168,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:607,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].access$000(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil"
    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: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil].findEdgesIncidentOnOrigin(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil:36,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil:40,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeUtil:41,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].area(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:27,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:28,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:43,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:44,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getArea()"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:43,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:44,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addIntersections()"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 73
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:49"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:50,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:55,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:59,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:62,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:79,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:80,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:94,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:96,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:99,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 18
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].addResultVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:116,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:117,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:118,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:120,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:123,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:124,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea].getVertices(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:132,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayIntersectionArea:132,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$20].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:414,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$20].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:416"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:416,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:417,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:417,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:417,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:417,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:418,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$20:418,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setSegIndex(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:277,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jtslab.clean.HoleRemover$Predicate)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtslab.clean.HoleRemover$Predicate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover].getResult()"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover,org.locationtech.jtslab.clean.HoleRemover$1)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover:56,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover,org.locationtech.jtslab.clean.HoleRemover$1)"
    - Src: "org.locationtech.jtslab.clean.HoleRemover:56,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover,org.locationtech.jtslab.clean.HoleRemover$1)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtslab.clean.HoleRemover"
    - "org.locationtech.jtslab.clean.HoleRemover$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:59,1"
      Dst: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp].<init>(org.locationtech.jtslab.clean.HoleRemover)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtslab.clean.HoleRemover"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.HoleRemover$HoleRemoverMapOp:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtslab.clean.HoleRemover].access$100(org.locationtech.jtslab.clean.HoleRemover)"
    functionSourceFile: "org.locationtech.jtslab.clean.HoleRemover"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 0
    returnType: "org.locationtech.jtslab.clean.HoleRemover$Predicate"
    argCount: 1
    argTypes:
    - "org.locationtech.jtslab.clean.HoleRemover"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:35,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:35,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].setSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:56,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[java.lang.Object].toString()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelPolygon(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelLine(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabel(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:61,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:62,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:63,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:65,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelPolygon(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelLine(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabel(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelPolygon(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:80,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:81,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:81,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:225,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.AffineTransform"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:20,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:20,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:20,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:21,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelLine(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:95,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:100,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:101,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:106,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:45,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:46,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].isOnBoundary(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:58,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:60,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].isOnBoundary(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:65,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 59
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:575"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:582"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:569,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 23
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clipEndpoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double,double,double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:28,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clipEndpoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clipEndpoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double,double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - "[org.locationtech.jts.geom.Coordinate].setY(double)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:34,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:35,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.SegmentClipper:60,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].isOnBoundary(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:76"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.awt.Graphics2D"
    - "java.lang.String"
    - "int"
    - "int"
    - "float"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[java.awt.geom.RectangularShape].getHeight()"
    - "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:34,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:34,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:34,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:35,1"
      Dst: "[java.awt.geom.RectangularShape].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:36,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabel(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getInteriorPoint()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getInteriorPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:85,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:86,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:87,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:87,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelPolygon(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ConstrainedInteriorPoint].getCoordinate(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:80,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:81,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:81,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabel(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getInteriorPoint()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getInteriorPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:85,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:86,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:87,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:87,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlignCenter(java.awt.Graphics2D,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle].paintLabelLine(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float)"
    functionUses: 0
    ICount: 65
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:95,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:100,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:101,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:106,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.DataLabelStyle:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].<init>(int,int,int,double)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:271,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].isVertex(int)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:278"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].getIndex()"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].getArea()"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].compareTo(org.locationtech.jts.simplify.RingHull$Corner)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.RingHull$Corner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:297,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].envelope(org.locationtech.jts.simplify.LinkedRing)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.LinkedRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:301,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.LinkedRing)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.simplify.LinkedRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:310,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:313,1"
      Dst: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].isRemoved(org.locationtech.jts.simplify.LinkedRing)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.LinkedRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:317,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].prev(int)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:317,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].toLineString(org.locationtech.jts.simplify.LinkedRing)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.LinkedRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.simplify.RingHull$Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:321,1"
      Dst: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:324,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:325,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:324,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedRing].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:329,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].safeCoord(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.RingHull$Corner:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.RingHull$Corner:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:329,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.RingHull$Corner].compareTo(org.locationtech.jts.simplify.RingHull$Corner)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:265,1"
      Dst: "[org.locationtech.jts.simplify.RingHull$Corner].compareTo(org.locationtech.jts.simplify.RingHull$Corner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.RingHull$Corner].compareTo(org.locationtech.jts.simplify.RingHull$Corner)"
    functionSourceFile: "org.locationtech.jts.simplify.RingHull$Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.RingHull$Corner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.RingHull$Corner:297,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFrame].<init>()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JSplitPane].<init>()"
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].<init>()"
    - "[javax.swing.JTabbedPane].<init>()"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[java.awt.GridLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].<init>()"
    - "[javax.swing.JFileChooser].<init>()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.awt.Component].enableEvents(long)"
    - "[javax.swing.ImageIcon].getImage()"
    - "[javax.swing.JFrame].setIconImage(java.awt.Image)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].jbInit()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].initFileDrop(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 110
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:99,1"
      Dst: "[javax.swing.JFrame].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:69,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:71,1"
      Dst: "[javax.swing.JSplitPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:72,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:76,1"
      Dst: "[javax.swing.JTabbedPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:84,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:85,1"
      Dst: "[java.awt.GridLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:91,1"
      Dst: "[javax.swing.JFileChooser].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:101,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:103,1"
      Dst: "[java.awt.Component].enableEvents(long)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:104,1"
      Dst: "[javax.swing.ImageIcon].getImage()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:104,1"
      Dst: "[javax.swing.JFrame].setIconImage(java.awt.Image)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:105,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:106,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:106,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:114,1"
      Dst: "[javax.swing.JSpinner].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].initFileDrop(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:125,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].initFileDrop(java.awt.Component)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Component"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.awt.Component,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:130,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].<init>(java.awt.Component,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].initFileChoosers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].<init>()"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:142,1"
      Dst: "[javax.swing.JFileChooser].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:143,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:144,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:145,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:145,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:163"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isShowingIndicators()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:163"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isSavingIndicators()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:163"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getSpatialFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].addGeometryListener(org.locationtech.jtstest.testbuilder.model.GeometryListener)"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].addGeometryListener(org.locationtech.jtstest.testbuilder.model.GeometryListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:208,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setFocusGeometry(int)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.WKTPanel:510"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.WKTPanel:511"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.WKTPanel:509"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setFocusGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:515,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:517,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.StatsPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.StatsPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4:198,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].addGeometryListener(org.locationtech.jtstest.testbuilder.model.GeometryListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].<init>(int)"
    - "[java.util.Vector].clone()"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.Vector].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:377"
      Branch Sides: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:377,1"
      Dst: "[java.util.Vector].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:378,1"
      Dst: "[java.util.Vector].clone()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:379,1"
      Dst: "[java.util.Vector].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:380,1"
      Dst: "[java.util.Vector].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.DefaultListModel].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestListPanel:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestListPanel:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:159,1"
      Dst: "[javax.swing.DefaultListModel].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCases()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:160,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:163,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.TestListPanel:164,1"
      Dst: "[javax.swing.DefaultListModel].addElement(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].removeAll()"
    - "[java.util.List].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:183,1"
      Dst: "[java.awt.Container].removeAll()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:184,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Window].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:216,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:216,1"
      Dst: "[java.awt.Window].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Window].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:220,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:220,1"
      Dst: "[java.awt.Window].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCurrentTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrent(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrent(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultValuePanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ResultValuePanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.InfoPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.CommandPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionExit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].exit(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:253,1"
      Dst: "[java.lang.System].exit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultValueTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:277,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:282,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:286,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].processWindowEvent(java.awt.event.WindowEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.WindowEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFrame].processWindowEvent(java.awt.event.WindowEvent)"
    - "[java.awt.AWTEvent].getID()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionExit()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:296,1"
      Dst: "[javax.swing.JFrame].processWindowEvent(java.awt.event.WindowEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:297,1"
      Dst: "[java.awt.AWTEvent].getID()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:298,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionExit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionExit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].exit(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:253,1"
      Dst: "[java.lang.System].exit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].model_geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:304,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].spatialFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isAutoExecute()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].spatialFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isAutoExecute()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].spatialFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getSpatialFunctionPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getSpatialFunctionPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getSpatialFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isAutoExecute()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:488,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getSpatialFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:61,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].clearResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isFunctionSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].enableExecuteControl(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].startFunctionMonitor()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].runFunctionWorker(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:498,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:312,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:313,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].copyResultToTest()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:318,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:322,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:323,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:329,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:332,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:349,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:199,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:200,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:201,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:202,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:258,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:336"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:338,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:338,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:339,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:308,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:349,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:343,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:344,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:349,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].menuLoadXmlTestFile_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - "[javax.swing.JFileChooser].showOpenDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFiles()"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:368"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:367"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:363"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:362"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:354,1"
      Dst: "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:355,1"
      Dst: "[javax.swing.JFileChooser].addChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:356,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:357,1"
      Dst: "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:358,1"
      Dst: "[javax.swing.JFileChooser].showOpenDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:359,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFiles()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:361,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:367,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:282,1"
      Dst: "[javax.swing.JFileChooser].setSelectedFile(java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getParsingProblems()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:286,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getRunXml()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getTestCaseList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunXml(org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunDescription(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:177,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getRunWorkspace(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].toXML(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:179,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.TestCaseList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionDeleteAllTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:377,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:377,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:378,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].actionLoadXmlTestFolder()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - "[javax.swing.JFileChooser].showOpenDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFiles()"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:384,1"
      Dst: "[javax.swing.JFileChooser].removeChoosableFileFilter(javax.swing.filechooser.FileFilter)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:385,1"
      Dst: "[javax.swing.JFileChooser].setDialogTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:386,1"
      Dst: "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:387,1"
      Dst: "[javax.swing.JFileChooser].showOpenDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:388,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFiles()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:390,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:392,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].openXmlFilesAndDirectories(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:396,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].displayRevealTopo()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setRevealingTopology(boolean)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getStretchSize()"
    - "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setTopologyStretchSize(double)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:401,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:401,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setRevealingTopology(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:402,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getStretchSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:402,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setTopologyStretchSize(double)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:403,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:403,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setRevealingTopology(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.DisplayParameters"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getStretchSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JSpinner].getValue()"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:374,1"
      Dst: "[javax.swing.JSpinner].getValue()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:374,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setTopologyStretchSize(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.DisplayParameters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Dimension].<init>(int,int)"
    - "[java.awt.Window].setSize(java.awt.Dimension)"
    - "[java.awt.Frame].setTitle(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].getMenuBar()"
    - "[javax.swing.JFrame].setJMenuBar(javax.swing.JMenuBar)"
    - "[javax.swing.JFileChooser].setFileSelectionMode(int)"
    - "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.GridLayout].setRows(int)"
    - "[java.awt.GridLayout].setColumns(int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].getToolBar()"
    - "[javax.swing.JTabbedPane].setTabPlacement(int)"
    - "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - "[javax.swing.JSplitPane].setOrientation(int)"
    - "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JSplitPane].setResizeWeight(double)"
    - "[javax.swing.JSplitPane].setDividerLocation(int)"
    - "[javax.swing.JFrame].getContentPane()"
    functionUses: 0
    ICount: 129
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:410,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:410,1"
      Dst: "[java.awt.Window].setSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:411,1"
      Dst: "[java.awt.Frame].setTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:412,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar].getMenuBar()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:412,1"
      Dst: "[javax.swing.JFrame].setJMenuBar(javax.swing.JMenuBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:414,1"
      Dst: "[javax.swing.JFileChooser].setFileSelectionMode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:415,1"
      Dst: "[javax.swing.JFileChooser].setMultiSelectionEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:425,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:426,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:427,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:428,1"
      Dst: "[java.awt.GridLayout].setRows(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:429,1"
      Dst: "[java.awt.GridLayout].setColumns(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:433,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:437,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].getToolBar()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:441,1"
      Dst: "[javax.swing.JTabbedPane].setTabPlacement(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:442,1"
      Dst: "[javax.swing.JTabbedPane].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:451,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:452,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:452,1"
      Dst: "[javax.swing.JTabbedPane].addChangeListener(javax.swing.event.ChangeListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:461,1"
      Dst: "[javax.swing.JSplitPane].setOrientation(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:463,1"
      Dst: "[javax.swing.border.EmptyBorder].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:463,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:464,1"
      Dst: "[javax.swing.JSplitPane].setResizeWeight(double)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:465,1"
      Dst: "[javax.swing.JSplitPane].setDividerLocation(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:469,1"
      Dst: "[javax.swing.JFrame].getContentPane()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].getSelectedIndex()"
    - "[java.awt.Container].getComponent(int)"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].refresh()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:484"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:488"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:487"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:483,1"
      Dst: "[javax.swing.JTabbedPane].getSelectedIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485,1"
      Dst: "[java.awt.Container].getComponent(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:486,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].refresh()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:491,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:493,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:497,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:498,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setText(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updatePrecisionModelDescription()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getPrecisionModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:504,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setPrecisionModelDescription(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:516,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].refreshLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:520,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].removeAll()"
    - "[java.util.List].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:183,1"
      Dst: "[java.awt.Container].removeAll()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:184,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportProblemsParsingXmlTestFile(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:526"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:530"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:524,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:527,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:528,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:529,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:533,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:533,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:533,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:531,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].pickOffset(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:538"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:538"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:541"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:543"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:541"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:538,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:539,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].displayRevealTopo()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].displayRevealTopo()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].displayRevealTopo()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setRevealingTopology(boolean)"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getStretchSize()"
    - "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setTopologyStretchSize(double)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:401,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:401,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setRevealingTopology(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:402,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getStretchSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:402,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.DisplayParameters].setTopologyStretchSize(double)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:403,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:403,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].access$100(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].getSelectedIndex()"
    - "[java.awt.Container].getComponent(int)"
    - "[org.locationtech.jtstest.testbuilder.StatsPanel].refresh()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:484"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:488"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:487"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:483,1"
      Dst: "[javax.swing.JTabbedPane].getSelectedIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:485,1"
      Dst: "[java.awt.Container].getComponent(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:486,1"
      Dst: "[org.locationtech.jtstest.testbuilder.StatsPanel].refresh()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    functionSourceFile: "org.locationtech.jts.util.AssertionFailedException"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.AssertionFailedException:26,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.AssertionFailedException"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.AssertionFailedException:36,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].spatialFunctionPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getSpatialFunctionPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getSpatialFunctionPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getToolbar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].spatialFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isAutoExecute()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].spatialFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].isAutoExecute()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].execute(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryA()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].getGeometryB()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].exchangeGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].exchangeGeometry()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geomEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].exchangeGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].addTestCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:273,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:312,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:313,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showTab(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].extractComponentsToTestCase(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToleranceInModel()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToleranceInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToleranceInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:82,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:83,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:312,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:313,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].extractComponentsToTestCase(org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponents(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].selectZoomButton()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponents(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].selectZoomButton()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].copyComponentToClipboard(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToleranceInModel()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToleranceInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:158,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:162,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToleranceInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getComponent(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.LayerList:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.LayerList:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:82,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:83,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - "[java.lang.Object].toString()"
    - "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setFocusGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setEditGeomIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].setFocusGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setEditGeomIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].toolbar()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].setFocusGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:177,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:177,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:336"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:338,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:338,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:339,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectResult()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:182,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:329,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:332,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].inspectGeometry(java.lang.String,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame)"
    - "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].<init>(java.awt.Frame)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryInspectorDialog].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.TestBuilderDialogs:181,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].clearResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:196,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setString(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:384,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setResult(java.lang.String,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setOpName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setExecutedTime(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:208,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setCommandErr(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getCommandPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.CommandPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setCaretPosition(int)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:311,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:313,1"
      Dst: "[javax.swing.text.JTextComponent].setCaretPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:314,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageAsPNG()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].getSavePNGFileChooser()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].chooseFilenameWithConfirm(java.awt.Component,javax.swing.JFileChooser)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].writeImage(java.awt.Component,java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:218,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].getSavePNGFileChooser()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].chooseFilenameWithConfirm(java.awt.Component,javax.swing.JFileChooser)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:222,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].writeImage(java.awt.Component,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].saveImageToClipboard()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].saveImageToClipboard(java.awt.Component,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:233,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:233,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].saveImageToClipboard(java.awt.Component,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:237,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].updateLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawRectangle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:254,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.RectangleTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:254,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPolygon()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.StreamPolygonTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawLineString()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractStreamDrawTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.LineStringTool:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractStreamDrawTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDrawPoint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeInfo()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:270,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:270,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeExtractComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:274,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:274,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:28"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ExtractComponentTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDeleteVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool:27"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool:28"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BoxBandTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeEditVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.EditVertexTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeMove()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.MoveTool:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeZoomIn()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.ZoomTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:287,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modePan()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:291,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PanTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:291,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomOneToOne()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToFullExtent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:298,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:298,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToResult()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:302,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:302,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeResult()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeResult()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:93,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:96,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:96,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInputA()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:310,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:310,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:502"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:501,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:501,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInputB()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:314,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:314,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:502"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:501,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:501,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseMoveTo(int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].prevCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].nextCase()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].prevCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].nextCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:325,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].prevCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:522"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:521"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].nextCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:525"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:527"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:526"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:525,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].size()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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: "org.locationtech.jtstest.test.TestCaseList:33,1"
      Dst: "[java.util.ArrayList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCaseIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:509,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setCurrentTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCasesSize()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:510,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setMaxTestCaseIndex(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:512,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateStatsPanelIfVisible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:306,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseCopy()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].copyCase()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:329,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:329,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:329,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].copyCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:330,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:330,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].copyCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:531,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:531,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:532,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:496,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.test.TestCase].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:48,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCase].<init>()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCase"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCase:48,1"
      Dst: "[org.locationtech.jtstest.test.TestCase].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:541,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:312,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:313,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseCreateNew()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:335,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:335,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseDelete()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].deleteCase()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:340,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:340,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:340,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].deleteCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:341,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:341,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].deleteCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].remove(int)"
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:551"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:554"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:553"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:556"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:555"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:550,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].remove(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:551,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:552,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].remove(int)"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].remove(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.test.TestCaseList:50,1"
      Dst: "[java.util.ArrayList].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.test.TestCaseList].size()"
    functionSourceFile: "org.locationtech.jtstest.test.TestCaseList"
    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: "org.locationtech.jtstest.test.TestCaseList:33,1"
      Dst: "[java.util.ArrayList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:312,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:313,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:65"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jts.geom.Coordinate,double)"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:77,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:84,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:85,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:94,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    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: "org.locationtech.jtstest.testbuilder.model.LayerList:60,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeComponentLocation(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeFacetLocation(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeComponentLocation(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeFacetLocation(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:122,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeComponentLocation(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].pathString()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[java.lang.Object].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 76
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:131,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:133,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:133,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:135,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].pathString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:139,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:140,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:140,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:140,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:140,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:142,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:142,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:144,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:144,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:147,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:151,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:160,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:41,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].createAOI(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].createAOI(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.ComponentLocater:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.ComponentLocater].getComponents(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].pathString()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    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(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:125,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:128,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:130,1"
      Dst: "[java.lang.StringBuffer].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:132,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeFacetLocation(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].getLocations(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].filterVertexLocations(java.util.Collection)"
    - "[java.util.List].isEmpty()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeFacetLocations(java.util.List)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].getLocations(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].filterVertexLocations(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:173,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeFacetLocations(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:60,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].getLocations(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].findLocations(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.FacetLocater].filterVertexLocations(java.util.Collection)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.FacetLocater"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:51,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:52,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:52,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:53,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.FacetLocater:54,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeFacetLocations(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].componentType(org.locationtech.jtstest.testbuilder.geom.GeometryLocation)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].toFacetString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getLength()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:193"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:193"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:182,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:184,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:187,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:187,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:188,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:191,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:196,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].componentType(org.locationtech.jtstest.testbuilder.geom.GeometryLocation)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:197,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].toFacetString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:200,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:200,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:200,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:200,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:207,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].componentType(org.locationtech.jtstest.testbuilder.geom.GeometryLocation)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:223"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:213,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:213,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:214,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:214,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:215,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].toFacetString()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    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(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:137,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:140,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:145,1"
      Dst: "[java.lang.StringBuffer].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:156,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:157,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:157,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:159,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:140,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getLength()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:115,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:116,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:353,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:353,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getLogPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showInfoTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:366,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].removeDuplicatePoints()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].<init>()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:372,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:373,1"
      Dst: "[org.locationtech.jtstest.clean.CleanDuplicatePoints].clean(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:374,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:374,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:375,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:375,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].changeToLines()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:379,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:380,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:380,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:381,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:381,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:145,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:145,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:145,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:73,1"
      Dst: "[org.locationtech.jtstest.test.Testable].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].geometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:491,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].currentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:492,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:493,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].indicatorShow(org.locationtech.jts.geom.Geometry,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isShowingIndicators()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isSavingIndicators()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasLayer(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addIndicator(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].refreshLayerList()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].draw(org.locationtech.jts.geom.Geometry,java.awt.Color,java.awt.Color)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:391"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:388,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isShowingIndicators()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:390,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isSavingIndicators()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:392,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:392,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasLayer(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:393,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addIndicator(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:395,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:395,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].refreshLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:397,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:397,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].draw(org.locationtech.jts.geom.Geometry,java.awt.Color,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isShowingIndicators()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isSavingIndicators()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].isRunning()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].hasLayer(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].findLayer(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].findLayer(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addIndicator(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayerIndicators()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayerIndicators()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].refreshLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:520,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].draw(org.locationtech.jts.geom.Geometry,java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:438,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:439,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:439,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].triangulate(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:60,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:61,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].createNextLinks(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:94,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:99,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].createNextLinks(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:102,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].createNextLinks(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:109"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].setSkipFlatCorners(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].initCornerIndex()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isConvex(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isCornerInvalid(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isFlat(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].removeCorner()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEar(int,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.tri.Tri].create(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextCorner(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:135,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:143,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].initCornerIndex()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:145,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:157,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isConvex(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:159,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isCornerInvalid(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:160,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isFlat(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:163,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].removeCorner()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:169,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:175,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEar(int,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:176,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:176,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:195,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextCorner(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 19
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEar(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].findIntersectingVertex(int,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEarScan(int,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:200,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].findIntersectingVertex(int,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:205,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:207,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEarScan(int,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].findIntersectingVertex(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].envelope(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isRemoved(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:226,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].envelope(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:227,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:236,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isRemoved(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:248,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:256,1"
      Dst: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 17
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isValidEarScan(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:310"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:275,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:277,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:289,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].envelope(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:315,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:316,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].removeCorner()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:329,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:333,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isRemoved(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:338"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:337"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].initCornerIndex()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextCorner(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:366,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:369,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].fetchCorner(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isConvex(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:384,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isFlat(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:388,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].isCornerInvalid(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:397,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].toGeometry()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:409"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:401,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:402,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:406,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:408,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:410,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:411,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:411,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:411,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].nextIndex(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangulatePolyFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangulatePolyFunctions"
    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: "org.locationtech.jtstest.function.TriangulatePolyFunctions:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangulatePolyFunctions].triangulate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangulatePolyFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].triangulate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangulatePolyFunctions:25,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].triangulate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].triangulate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].getResult()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:51,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:52,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:65,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].getResult()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].compute()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:75,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].compute()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:76,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].compute()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:91,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:93,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:93,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:94,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:95,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:96,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].triangulate(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:106,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonTriangulator:108,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].triangulate(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].compute()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:73,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:74,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].triangulate(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:60,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonEarClipper:61,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonEarClipper].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:53,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:56,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:58,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.TriangulatePolyFunctions].constrainedDelaunay(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangulatePolyFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangulatePolyFunctions:30,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getResult()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:43,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:44,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:56,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:57,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].getResult()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].compute()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:67,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].compute()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:68,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].compute()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:84,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:87,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator].triangulatePolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.ConstrainedDelaunayTriangulator:88,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:53,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:55,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:56,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:58,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.TriangulatePolyFunctions].joinHoles(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangulatePolyFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinAsPolygon(org.locationtech.jts.geom.Polygon)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangulatePolyFunctions:35,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinAsPolygon(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].joinAsPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:62,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:62,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:62,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].join(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].compute()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:73,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner:74,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    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: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].difference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:31,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].differenceBA(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:35,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].intersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:41,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:47,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].symDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:52,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions$1].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:56,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions$1].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:68,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:69,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:70,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions$1].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions$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: "org.locationtech.jtstest.function.OverlayNGRobustFunctions$1:56,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:147,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].extract(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.UnionStrategy"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.UnaryUnionOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.UnaryUnionOp:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.UnaryUnionOp:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:184,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:192,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:193,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:195,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:206,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:208,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionNoOpt(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:219,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:226,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].unionWithNull(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:233,1"
      Dst: "[org.locationtech.jts.operation.union.PointGeometryUnion].union(org.locationtech.jts.geom.Puntal,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.UnaryUnionOp:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 20
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unionArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:74,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions$1].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:56,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions$1].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:68,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:69,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:70,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unionLength(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:78,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].unaryUnion(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions$1].<init>()"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:56,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions$1].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:68,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:69,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].setUnionFunction(org.locationtech.jts.operation.union.UnionStrategy)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:70,1"
      Dst: "[org.locationtech.jts.operation.union.UnaryUnionOp].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlayAreaTest(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].areaDelta(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:82,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].areaDelta(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].areaDelta(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:106,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:121,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 20
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].areaDelta(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:99,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:106,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:121,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 20
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].access$000(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:24,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGRobustFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGRobustFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGRobustFunctions:27,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    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: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].setSites(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:70,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].extractUniqueCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:54,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].setSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:82,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:82,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].unique(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:60,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:61,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].setClipEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].setTolerance(double)"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].create()"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:119,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:121,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:125,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:126,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:127,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:132,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:133,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:88,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:89,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:90,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:91,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:301,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:304,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.Envelope:305,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.geom.Envelope:306,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:72,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:75,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.DelaunayTriangulationBuilder:75,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].createFrame(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].initSubdiv()"
    - "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:109,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:91,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:467,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:114,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].createFrame(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:116,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].initSubdiv()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:117,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:80,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:81,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].getSubdivision()"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].create()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:143,1"
      Dst: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].create()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].create()"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:119,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:121,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:125,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:126,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:127,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:132,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:133,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].getDiagram(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].create()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiDiagram(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].clipGeometryCollection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:160,1"
      Dst: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].create()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:161,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiDiagram(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:173,1"
      Dst: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].clipGeometryCollection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].create()"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:119,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].envelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:121,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:125,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].toVertices(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:126,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:127,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:132,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:133,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiDiagram(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiCellPolygons(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:920,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiCellPolygons(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:921,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:921,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiCellPolygons(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVertexUniqueEdges(boolean)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiCellPolygon(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:947"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:951"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:950"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:943,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:943,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:945,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:946,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVertexUniqueEdges(boolean)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:947,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:947,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:948,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:949,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiCellPolygon(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:949,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor"
    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: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleCircumcentreVisitor:648,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].visitTriangles(org.locationtech.jts.triangulate.quadedge.TriangleVisitor,boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.TriangleVisitor"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].<init>()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Stack].empty()"
    - "[java.util.Stack].pop()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].fetchTriangleToVisit(org.locationtech.jts.triangulate.quadedge.QuadEdge,java.util.Stack,boolean,java.util.Set)"
    - "[org.locationtech.jts.triangulate.quadedge.TriangleVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:682"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:691"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:684"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:689"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:687"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:690"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:689"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:677,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:678,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:680,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:682,1"
      Dst: "[java.util.Stack].empty()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:683,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:684,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:685,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].fetchTriangleToVisit(org.locationtech.jts.triangulate.quadedge.QuadEdge,java.util.Stack,boolean,java.util.Set)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:688,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TriangleVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVertexUniqueEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:555"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:581"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:580"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:561"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:561"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:576"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:576"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:579"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:553,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:554,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:555,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:555,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:556,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:557,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:559,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:560,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:561,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:562,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:571,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 12
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:459"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:462"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:461"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:462"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:458,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].equals(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getVoronoiCellPolygon(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].addAll(java.util.Collection,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:978"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:972"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:984"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:988"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:968,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:973,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:973,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:973,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:974,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:977,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:980,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:981,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].addAll(java.util.Collection,boolean)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:982,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:984,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:986,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:986,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:989,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:990,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:990,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:993,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].rot()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].addAll(java.util.Collection,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:187,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.CoordinateList:187,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.CoordinateList:188,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.CoordinateList:188,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].clipGeometryCollection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:179,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:180,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:181,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:184,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:186,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:187,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:189,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:189,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:193,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:196,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:196,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.triangulate.VoronoiDiagramBuilder].clipGeometryCollection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:178,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:179,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:180,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:181,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:184,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:186,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:187,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:189,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:189,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:192,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:193,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:196,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.VoronoiDiagramBuilder:196,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$Translater"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$Translater:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$Translater"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 2
    ICount: 14
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$Translater:141,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover$Translater:143,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isDone()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$Translater"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover$Translater"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].centreX(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:102,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:102,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:102,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].centreY(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:106,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:106,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:106,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundables(java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].isEmpty()"
    - "[org.jdom2.AttributeList].isEmpty()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList:org.locationtech.jts.index.strtree.AbstractSTRtree].getNodeCapacity()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.locationtech.jts.index.strtree.STRtree].verticalSlices(java.util.List,int)"
    - "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlices(java.util.List[],int)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getNodeCapacity()"
    - "[java.lang.Math].ceil(double)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 1
    ICount: 27
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:125"
        BranchSideFuncs:
        - "isEmpty()"
        - "verticalSlices(java.util.List,int)"
        - "createParentBoundablesFromVerticalSlices(java.util.List[],int)"
        - "getNodeCapacity()"
        - "isTrue(boolean)"
        - "size()"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:124"
        BranchSideFuncs:
        - "isEmpty()"
        - "isTrue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:125,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:125,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:126,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:126,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getNodeCapacity()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:126,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:127,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:128,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:130,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:129,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].verticalSlices(java.util.List,int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:131,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlices(java.util.List[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].verticalSlices(java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 0
    returnType: "java.util.List[]"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.lang.Math].ceil(double)"
    - "[java.util.List].iterator()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:152"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:151"
        BranchSideFuncs:
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:152"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:151"
        BranchSideFuncs:
        - "iterator()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:152,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:152,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:154,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:156,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:158,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:159,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:160,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlices(java.util.List[],int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlice(java.util.List,int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:135"
        BranchSideFuncs:
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:134"
        BranchSideFuncs:
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:135,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:136,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:139,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlice(java.util.List,int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:138,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlice(java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].createParentBoundables(java.util.List,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:145,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].createParentBoundables(java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlices(java.util.List[],int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlice(java.util.List,int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:135"
        BranchSideFuncs:
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:134"
        BranchSideFuncs:
        - "isTrue(boolean)"
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:135,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:136,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:139,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlice(java.util.List,int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:138,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].createParentBoundablesFromVerticalSlice(java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].createParentBoundables(java.util.List,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:145,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].createParentBoundables(java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].verticalSlices(java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 0
    returnType: "java.util.List[]"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.lang.Math].ceil(double)"
    - "[java.util.List].iterator()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:152"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:151"
        BranchSideFuncs:
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:152"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:151"
        BranchSideFuncs:
        - "iterator()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:152,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:152,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:154,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:156,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:158,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:159,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:160,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 184
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:185,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>(int,org.locationtech.jts.index.strtree.STRtree$STRtreeNode)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.index.strtree.STRtree$STRtreeNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int,org.locationtech.jts.index.strtree.AbstractNode)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:196,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int,org.locationtech.jts.index.strtree.AbstractNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>(int,java.util.ArrayList)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.ArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int,java.util.ArrayList)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:207,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int,java.util.ArrayList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].createNode(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 1
    returnType: "org.locationtech.jts.index.strtree.AbstractNode"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree$STRtreeNode].<init>(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:211,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree$STRtreeNode].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree$STRtreeNode].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree$STRtreeNode"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractNode].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree$STRtreeNode:61,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractNode].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].getIntersectsOp()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 0
    returnType: "org.locationtech.jts.index.strtree.AbstractSTRtree$IntersectsOp"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:232,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:241,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].remove(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:252,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].remove(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].size()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].size()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:262,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].depth()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].depth()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:272,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].depth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].getComparator()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 275
    functionDepth: 0
    returnType: "java.util.Comparator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:298,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:301,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:301,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:302,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:324,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:326,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:327,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:327,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:328,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.STRtree"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:348"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:348,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:349,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:349,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:350,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.index.strtree.BoundablePair)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:394"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:401"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:400"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:359,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:360,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:362,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:364,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:365,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:384,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:395,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:402,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.STRtree"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.BoundablePair,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:421,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:421,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:422,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.BoundablePair,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.BoundablePair,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].maximumDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:497"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:471"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:470"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:494"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:486"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:496"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:442,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:443,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:445,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:447,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:448,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:471,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].maximumDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:478,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:495,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbour(org.locationtech.jts.geom.Envelope,java.lang.Object,org.locationtech.jts.index.strtree.ItemDistance,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.Object[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    - "org.locationtech.jts.index.strtree.ItemDistance"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:528"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:527,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:529,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].<init>(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:530,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].getRoot()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:530,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].<init>(org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.Boundable,org.locationtech.jts.index.strtree.ItemDistance)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:531,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,double,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:536,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,double,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].nearestNeighbourK(org.locationtech.jts.index.strtree.BoundablePair,double,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.Object[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.strtree.BoundablePair"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - "[java.util.PriorityQueue].size()"
    - "[java.util.PriorityQueue].peek()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - "[org.locationtech.jts.index.strtree.STRtree].getItems(java.util.PriorityQueue)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:551"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:551"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:605"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:564"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:600"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:583"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:582"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:584"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:591"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:590"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:544,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:547,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:551,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:553,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:554,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getDistance()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:574,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].isLeaves()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:577,1"
      Dst: "[java.util.PriorityQueue].size()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:583,1"
      Dst: "[java.util.PriorityQueue].peek()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:601,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].expandToQueue(java.util.PriorityQueue,double)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:606,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].getItems(java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].getItems(java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].size()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:616"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:614,1"
      Dst: "[java.util.PriorityQueue].size()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:616,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:618,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:619,1"
      Dst: "[org.locationtech.jts.index.strtree.BoundablePair].getBoundable(int)"
    - Src: "org.locationtech.jts.index.strtree.STRtree:619,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].access$000(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].centreX(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:53,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].centreX(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].centreX(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:102,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:102,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:102,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].avg(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].access$100(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].centreY(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:53,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].centreY(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayArea].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.edgeray.EdgeRayArea].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtslab.edgeray.EdgeRayArea].getArea()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:21,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayArea].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:22,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRayArea].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayArea].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.edgeray.EdgeRayArea].getArea()"
    functionSourceFile: "org.locationtech.jtslab.edgeray.EdgeRayArea"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayArea:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:32"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:31"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayArea:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtslab.edgeray.EdgeRayArea:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.edgeray.EdgeRayArea:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:33,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:33,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:34,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:39,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:46,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:46,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jtslab.edgeray.EdgeRayArea:46,1"
      Dst: "[org.locationtech.jtslab.edgeray.EdgeRay].areaTerm(double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:442,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:444,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    linkageType: null
    functionLinenumber: 452
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    functionUses: 4
    ICount: 27
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:459"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:462"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:461"
        BranchSideFuncs:
        - "getIntersectionNum()"
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:462"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:467"
        BranchSideFuncs:
        - "isInteriorIntersection()"
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:466"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:463"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:469"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:468"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:453,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:458,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:459,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:463,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].isDone()"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    linkageType: null
    functionLinenumber: 472
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>(org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1)"
    functionSourceFile: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:442,1"
      Dst: "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].<init>(org.jdom2.Document)"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Document"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.InputSource].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:388,1"
      Dst: "[org.xml.sax.InputSource].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].<init>(java.util.List)"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.InputSource].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:397,1"
      Dst: "[org.xml.sax.InputSource].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getSource()"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMSource$JDOMInputSource:407"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMSource$JDOMInputSource:406"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].setCharacterStream(java.io.Reader)"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:430,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getCharacterStream()"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.io.Reader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>()"
    - "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Document)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.jdom2.output.XMLOutputter].outputString(java.util.List)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMSource$JDOMInputSource:450"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMSource$JDOMInputSource:455"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMSource$JDOMInputSource:456"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMSource$JDOMInputSource:461"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMSource$JDOMInputSource:460"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:453,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>()"
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:453,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Document)"
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:453,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:457,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputString(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.jdom2.output.XMLOutputter].<init>()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:275,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Document)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Document"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:580,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:582,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Document,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:586,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(java.util.List)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:651,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:653,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(java.util.List,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:657,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].setByteStream(java.io.InputStream)"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$JDOMInputSource:479,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getDocumentSource()"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Document"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getListSource()"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ActionEvent].getModifiers()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseMoveTo(int,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:108,1"
      Dst: "[java.awt.event.ActionEvent].getModifiers()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseMoveTo(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].caseMoveTo(int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].prevCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].nextCase()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].cases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].prevCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].nextCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:325,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:26,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:39,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:49,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:50,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>(org.locationtech.jts.geom.CoordinateXYZM)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateXYZM"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateXYZM"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].<init>(org.locationtech.jts.geom.CoordinateXYZM)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:69,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].<init>(org.locationtech.jts.geom.CoordinateXYZM)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>(org.locationtech.jts.geom.CoordinateXYZM)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateXYZM"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].create()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:79,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:26,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].setM(double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].getOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    - "[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: 5
    ICount: 19
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:99,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:100,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:102,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:102,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXYM:org.locationtech.jts.geom.CoordinateXYZM].getM()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getM()"
    functionUses: 8
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:110,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:111,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getM()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].setOrdinate(int,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    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: 6
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:130,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:130,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:130,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:130,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:130,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].toString()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    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)"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:135,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:135,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:135,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    - Src: "org.locationtech.jts.geom.CoordinateXYZM:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXYZM].getM()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXYZM"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].findBestFitPlane(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.math.Plane3D].closestAxisPlane()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:44,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].findBestFitPlane(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:45,1"
      Dst: "[org.locationtech.jts.math.Plane3D].closestAxisPlane()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].findBestFitPlane(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.Plane3D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averagePoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averageNormal(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.math.Plane3D].<init>(org.locationtech.jts.math.Vector3D,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:62,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:62,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:63,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averagePoint(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:64,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averageNormal(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:65,1"
      Dst: "[org.locationtech.jts.math.Plane3D].<init>(org.locationtech.jts.math.Vector3D,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averagePoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:108,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:109,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:111,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averageNormal(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.math.Vector3D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[org.locationtech.jts.math.Vector3D].create(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector3D].normalize()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:80,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:81,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:87,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:89,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:94,1"
      Dst: "[org.locationtech.jts.math.Vector3D].create(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:94,1"
      Dst: "[org.locationtech.jts.math.Vector3D].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.math.Vector3D].create(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector3D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:66,1"
      Dst: "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.Vector3D:93,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].normalize()"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.Vector3D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].length()"
    - "[org.locationtech.jts.math.Vector3D].divide(double)"
    - "[org.locationtech.jts.math.Vector3D].create(double,double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Vector3D:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Vector3D:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Vector3D:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:220,1"
      Dst: "[org.locationtech.jts.math.Vector3D].length()"
    - Src: "org.locationtech.jts.math.Vector3D:222,1"
      Dst: "[org.locationtech.jts.math.Vector3D].divide(double)"
    - Src: "org.locationtech.jts.math.Vector3D:223,1"
      Dst: "[org.locationtech.jts.math.Vector3D].create(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.Vector3D].length()"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:200,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].divide(double)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.Vector3D"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].create(double,double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:181,1"
      Dst: "[org.locationtech.jts.math.Vector3D].create(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].create(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.Vector3D"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].<init>(double,double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:54,1"
      Dst: "[org.locationtech.jts.math.Vector3D].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Vector3D].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:117,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Plane3D].<init>(org.locationtech.jts.math.Vector3D,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Plane3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.math.Vector3D"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Plane3D:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averageNormal(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.math.Vector3D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[org.locationtech.jts.math.Vector3D].create(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector3D].normalize()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:80,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:81,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:87,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:89,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:94,1"
      Dst: "[org.locationtech.jts.math.Vector3D].create(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:94,1"
      Dst: "[org.locationtech.jts.math.Vector3D].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averagePoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:108,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:109,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:111,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.math.Plane3D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:130,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:130,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:134,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:141,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:142,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:143,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:144,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:157,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:158,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:159,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:44,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:55,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:66,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:166,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:167,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:83,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:85,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:94,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:95,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:96,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 98
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:160"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:161,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 25
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 194
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:216"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:141,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:142,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:143,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:144,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:148,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:149,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:150,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:151,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:157,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:158,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:159,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:166,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:167,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:83,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:85,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:94,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:95,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:96,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:157,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:158,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:159,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:166,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:167,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    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: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].difference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:25,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:47,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].differenceBA(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:29,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:47,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].intersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:33,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:47,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].symDifference(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:37,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:47,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:41,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:47,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGStrictFunctions].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGStrictFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:45,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setStrictMode(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGStrictFunctions:47,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.SIRtree].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree:50,1"
      Dst: "[org.locationtech.jts.index.strtree.SIRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].<init>(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    - "[org.locationtech.jts.index.strtree.SIRtree$1].<init>(org.locationtech.jts.index.strtree.SIRtree)"
    - "[org.locationtech.jts.index.strtree.SIRtree$2].<init>(org.locationtech.jts.index.strtree.SIRtree)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree:57,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].<init>(int)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:33,1"
      Dst: "[org.locationtech.jts.index.strtree.SIRtree$1].<init>(org.locationtech.jts.index.strtree.SIRtree)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:41,1"
      Dst: "[org.locationtech.jts.index.strtree.SIRtree$2].<init>(org.locationtech.jts.index.strtree.SIRtree)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].createNode(int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 1
    returnType: "org.locationtech.jts.index.strtree.AbstractNode"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.SIRtree$3].<init>(org.locationtech.jts.index.strtree.SIRtree,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree:61,1"
      Dst: "[org.locationtech.jts.index.strtree.SIRtree$3].<init>(org.locationtech.jts.index.strtree.SIRtree,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree$3].<init>(org.locationtech.jts.index.strtree.SIRtree,int)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree$3"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.SIRtree"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractNode].<init>(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree$3:61,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractNode].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].insert(double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree:82,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:82,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:82,1"
      Dst: "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:82,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.Interval"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.Interval:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.Interval:28"
        BranchSideFuncs:
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.index.strtree.Interval:27"
        BranchSideFuncs:
        - "isTrue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.Interval:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.strtree.Interval:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].query(double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.SIRtree].query(double,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree:89,1"
      Dst: "[org.locationtech.jts.index.strtree.SIRtree].query(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].query(double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.Interval"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.Interval:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.Interval:28"
        BranchSideFuncs:
        - "isTrue(boolean)"
      - BranchSide: "org.locationtech.jts.index.strtree.Interval:27"
        BranchSideFuncs:
        - "isTrue(boolean)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.Interval:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.strtree.Interval:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].query(double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[org.locationtech.jts.index.strtree.Interval].<init>(double,double)"
    - Src: "org.locationtech.jts.index.strtree.SIRtree:97,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].getIntersectsOp()"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.index.strtree.AbstractSTRtree$IntersectsOp"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree].getComparator()"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 0
    returnType: "java.util.Comparator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:282,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$9].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStroked(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:284,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStroked(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$9:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$800(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].geomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$700(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setStroked(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$1].<init>(org.locationtech.jts.operation.buffer.OffsetCurve)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.buffer.OffsetCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:205,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$1].map(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$1"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 30
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].access$000(org.locationtech.jts.operation.buffer.OffsetCurve)"
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - "[org.locationtech.jts.geom.MultiLineString].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPoint].getBoundary()"
    - "[org.locationtech.jts.geom.Polygon].getBoundary()"
    - "[org.locationtech.jts.geom.LineString].getBoundary()"
    - "[org.locationtech.jts.geom.GeometryCollection].getBoundary()"
    - "[org.locationtech.jts.geom.MultiPolygon].getBoundary()"
    - "[org.locationtech.jts.geom.Point].getBoundary()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$1].toLineString(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].access$100(org.locationtech.jts.operation.buffer.OffsetCurve,org.locationtech.jts.geom.LineString,double)"
    - "[org.locationtech.jts.geom.Geometry].getBoundary()"
    functionUses: 1
    ICount: 19
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$1:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$1:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:213"
        BranchSideFuncs:
        - "getBoundary()"
        - "buffer(double)"
        - "toLineString(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:212"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.operation.buffer.OffsetCurve,org.locationtech.jts.geom.LineString,double)"
        - "access$000(org.locationtech.jts.operation.buffer.OffsetCurve)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:211,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].access$000(org.locationtech.jts.operation.buffer.OffsetCurve)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:211,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:211,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getBoundary()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:211,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve$1].toLineString(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:213,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].access$100(org.locationtech.jts.operation.buffer.OffsetCurve,org.locationtech.jts.geom.LineString,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].access$000(org.locationtech.jts.operation.buffer.OffsetCurve)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.buffer.OffsetCurve"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$1].toLineString(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$1"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$1:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:227"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "getFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:225,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:225,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:225,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 620
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:621,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].access$100(org.locationtech.jts.operation.buffer.OffsetCurve,org.locationtech.jts.geom.LineString,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 29
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.buffer.OffsetCurve"
    - "org.locationtech.jts.geom.LineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].computeCurve(org.locationtech.jts.geom.LineString,double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:74,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].computeCurve(org.locationtech.jts.geom.LineString,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].computeCurve(org.locationtech.jts.geom.LineString,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 28
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getLength()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].offsetSegment(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].computeSections(org.locationtech.jts.geom.LineString,double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveSection].toLine(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveSection].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 29
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:273"
        BranchSideFuncs:
        - "createLineString()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:272"
        BranchSideFuncs:
        - "createLineString()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:276"
        BranchSideFuncs:
        - "createLineString()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:280"
        BranchSideFuncs:
        - "copy()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:279"
        BranchSideFuncs:
        - "getNumPoints()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:284"
        BranchSideFuncs:
        - "offsetSegment(org.locationtech.jts.geom.Coordinate[],double)"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:283"
        BranchSideFuncs:
        - "computeSections(org.locationtech.jts.geom.LineString,double)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:291"
        BranchSideFuncs:
        - "toLine(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:290"
        BranchSideFuncs:
        - "toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:272,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:272,1"
      Dst: "[org.locationtech.jts.geom.LineString].getLength()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:273,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:277,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:281,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:281,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].offsetSegment(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:284,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].computeSections(org.locationtech.jts.geom.LineString,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:288,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].toLine(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:291,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:171,1"
      Dst: "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].offsetSegment(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 325
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].offset(double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:326,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:326,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].offset(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].offset(double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 493
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:494,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:496,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].create()"
    - "[org.locationtech.jts.geom.CoordinateXYM].create()"
    - "[org.locationtech.jts.geom.CoordinateXY].create()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].create()"
    - "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - "[org.locationtech.jts.geom.Coordinate].setY(double)"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 53
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:352"
        BranchSideFuncs:
        - "setY(double)"
        - "setX(double)"
        - "create()"
    - Branch String: "org.locationtech.jts.geom.LineSegment:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:340,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:345,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LineSegment:356,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].create()"
    - Src: "org.locationtech.jts.geom.LineSegment:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - Src: "org.locationtech.jts.geom.LineSegment:358,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].computeSections(org.locationtech.jts.geom.LineString,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 296
    functionDepth: 27
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].rawOffset(org.locationtech.jts.geom.LineString,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].getBufferOriented(org.locationtech.jts.geom.LineString,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].computeCurveSections(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],java.util.List)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:310"
        BranchSideFuncs:
        - "getExteriorRing()"
        - "getBufferOriented(org.locationtech.jts.geom.LineString,double,org.locationtech.jts.operation.buffer.BufferParameters)"
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:297,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].rawOffset(org.locationtech.jts.geom.LineString,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:298,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:311,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].getBufferOriented(org.locationtech.jts.geom.LineString,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:314,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:314,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:315,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].computeCurveSections(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:318,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:319,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].rawOffset(org.locationtech.jts.geom.LineString,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 246
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:247,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:248,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:250,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:250,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:250,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:252,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 2
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:440"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:439"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:445"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:444"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:443"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:442"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:439,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:440,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:442,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:443,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:-1"
        BranchSideFuncs:
        - "getSegGen(double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:157"
        BranchSideFuncs:
        - "computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:156"
        BranchSideFuncs:
        - "computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:163"
        BranchSideFuncs:
        - "reverse(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:151,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:152,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:154,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:157,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:159,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:162,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].getBufferOriented(org.locationtech.jts.geom.LineString,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 330
    functionDepth: 26
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].extractMaxAreaPolygon(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Polygon].reverse()"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:337"
        BranchSideFuncs:
        - "reverse()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:336"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:331,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:331,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:332,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].extractMaxAreaPolygon(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:335,1"
      Dst: "[org.locationtech.jts.geom.Polygon].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.BufferOp].bufferOp(org.locationtech.jts.geom.Geometry,double,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferOp"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    - "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:200,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.operation.buffer.BufferParameters)"
    - Src: "org.locationtech.jts.operation.buffer.BufferOp:201,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferOp].getResultGeometry(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].extractMaxAreaPolygon(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 348
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].getArea()"
    functionUses: 1
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:352"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:351"
        BranchSideFuncs:
        - "getNumGeometries()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:362"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "getArea()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:361"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:352"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:351"
        BranchSideFuncs:
        - "getNumGeometries()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:349,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:355,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:356,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Polygon].getArea()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 6
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:233,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.Polygon:233,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Area"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRingSigned(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.algorithm.Area:44,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:436,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].computeCurveSections(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 368
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].matchSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Coordinate[],double[])"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].extractSections(org.locationtech.jts.geom.Coordinate[],double[],int,java.util.List)"
    functionUses: 2
    ICount: 40
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:372"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:388"
        BranchSideFuncs:
        - "matchSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Coordinate[],double[])"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:387"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:372"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:372"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:388"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:389"
        BranchSideFuncs:
        - "extractSections(org.locationtech.jts.geom.Coordinate[],double[],int,java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:373,1"
      Dst: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:377,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].matchSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Coordinate[],double[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:390,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].extractSections(org.locationtech.jts.geom.Coordinate[],double[],int,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex].buildIndex(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:35,1"
      Dst: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].buildIndex(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].buildIndex(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 5
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SegmentMCIndex:44"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
        - "next()"
        - "getEnvelope()"
      - BranchSide: "org.locationtech.jts.operation.buffer.SegmentMCIndex:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:39,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:40,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:41,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:42,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope()"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:42,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].matchSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Coordinate[],double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 407
    functionDepth: 6
    returnType: "int"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double,org.locationtech.jts.geom.Coordinate[],double[])"
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].getBufferMinIndex()"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:408,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:409,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:410,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double,org.locationtech.jts.geom.Coordinate[],double[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:411,1"
      Dst: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:412,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].getBufferMinIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:145,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:146,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,double,org.locationtech.jts.geom.Coordinate[],double[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 436
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "double"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:437,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction:440,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    linkageType: null
    functionLinenumber: 20
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:21,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:26,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].<init>(org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:48,1"
      Dst: "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].<init>(org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex:48,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].getBufferMinIndex()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction"
    linkageType: null
    functionLinenumber: 447
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].extractSections(org.locationtech.jts.geom.Coordinate[],double[],int,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 523
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double[]"
    - "int"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].findSectionEnd(double[],int,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].prev(int,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveSection].create(org.locationtech.jts.geom.Coordinate[],int,int,double,double)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].findSectionStart(double[],int)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:537"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:540"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:528"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:527"
        BranchSideFuncs:
        - "prev(int,int)"
        - "add(java.lang.Object)"
        - "findSectionEnd(double[],int,int)"
        - "create(org.locationtech.jts.geom.Coordinate[],int,int,double,double)"
        - "findSectionStart(double[],int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:528,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].findSectionEnd(double[],int,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:530,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].prev(int,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:532,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].create(org.locationtech.jts.geom.Coordinate[],int,int,double,double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:533,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:534,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].findSectionStart(double[],int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:538,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].findSectionEnd(double[],int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 573
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "double[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].next(int,int)"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 25
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:589"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:587"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:590"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:589"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:591"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:592"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:591"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:591"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:576"
        BranchSideFuncs:
        - "next(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:577,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].next(int,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:586,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].next(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:597"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:595"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].prev(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 600
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:602"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:600"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].create(org.locationtech.jts.geom.Coordinate[],int,int,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveSection"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.buffer.OffsetCurveSection"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveSection].<init>(org.locationtech.jts.geom.Coordinate[],double,double)"
    functionUses: 1
    ICount: 26
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:101"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],double,double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:100,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:102,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].<init>(org.locationtech.jts.geom.Coordinate[],double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].<init>(org.locationtech.jts.geom.Coordinate[],double,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveSection"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve].findSectionStart(double[],int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve"
    linkageType: null
    functionLinenumber: 543
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "double[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].next(int,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve].prev(int,int)"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 30
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:548"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:551"
        BranchSideFuncs:
        - "prev(int,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:557"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:556"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:557"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:566"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:564"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:567"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:566"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve:568"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:546"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve:545"
        BranchSideFuncs:
        - "next(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:546,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].next(int,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:552,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurve].prev(int,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve:563,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].toLine(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveSection"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveSection].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList:org.locationtech.jts.operation.buffer.OffsetCurveSection].isEndInSameSegment(double)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.Collections].sort(java.util.List)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveSection].isEndInSameSegment(double)"
    functionUses: 1
    ICount: 52
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:65"
        BranchSideFuncs:
        - "createLineString()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:68"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:89"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:88"
        BranchSideFuncs:
        - "createLineString(org.locationtech.jts.geom.Coordinate[])"
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:81"
        BranchSideFuncs:
        - "get(int)"
        - "isEndInSameSegment(double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:80"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:80"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:84"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:84"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:63,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:64,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:66,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:66,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:69,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:70,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:79,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].isEndInSameSegment(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:85,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 19
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveSection"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].isEndInSameSegment(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveSection"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:119"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveSection"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveSection].getCoordinates()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList:org.locationtech.jts.operation.buffer.OffsetCurveSection].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.Collections].sort(java.util.List)"
    functionUses: 1
    ICount: 28
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:40"
        BranchSideFuncs:
        - "createLineString()"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:43"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveSection:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveSection:49"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:38,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:39,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:41,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:41,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveSection].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:41,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:44,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveSection:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurve$1].toLineString(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurve$1"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurve$1:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:227"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "getFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurve$1:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:225,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:225,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurve$1:225,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    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: "org.locationtech.jtstest.testbuilder.ColorControl:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JPanel"
    argCount: 4
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.awt.Color"
    - "org.locationtech.jtstest.testbuilder.ColorControl$ColorListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BorderFactory].createBevelBorder(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl$1].<init>(java.awt.Component,java.lang.String,javax.swing.JPanel,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:30,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:31,1"
      Dst: "[javax.swing.BorderFactory].createBevelBorder(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:31,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:33,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:34,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:35,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:36,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:37,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:38,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:39,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl$1].<init>(java.awt.Component,java.lang.String,javax.swing.JPanel,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:40,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].showColorChooser(java.awt.Component,java.lang.String,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JColorChooser].showDialog(java.awt.Component,java.lang.String,java.awt.Color)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:54,1"
      Dst: "[javax.swing.JColorChooser].showDialog(java.awt.Component,java.lang.String,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].update(javax.swing.JPanel,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JPanel"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:58,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].getColor(javax.swing.JPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "javax.swing.JPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].getBackground()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:62,1"
      Dst: "[java.awt.Component].getBackground()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].access$000(java.awt.Component,java.lang.String,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ColorControl].showColorChooser(java.awt.Component,java.lang.String,java.awt.Color)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].showColorChooser(java.awt.Component,java.lang.String,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].showColorChooser(java.awt.Component,java.lang.String,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JColorChooser].showDialog(java.awt.Component,java.lang.String,java.awt.Color)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:54,1"
      Dst: "[javax.swing.JColorChooser].showDialog(java.awt.Component,java.lang.String,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].<init>(org.locationtech.jts.geomgraph.PlanarGraph)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.PlanarGraph"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].checkAll()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].check(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:46,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].check(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].check(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].testLinkResultDirectedEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:59,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:60,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:61,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:61,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].testLinkResultDirectedEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:98,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeEndStar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].testLinkResultDirectedEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].getPotentialResultAreaEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:126"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:100,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].getPotentialResultAreaEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:106,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:107,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:108,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:111,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:111,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:115,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:136,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:136,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].getPotentialResultAreaEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:68,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:69,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:70,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:72,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:80,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:81,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:82,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:84,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Label"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].isArea()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:173"
        BranchSideFuncs:
        - "isArea()"
    - Branch String: "org.locationtech.jts.geomgraph.Label:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:173"
        BranchSideFuncs:
        - "isArea()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:174,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:181"
        BranchSideFuncs:
        - "isArea(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:180"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:178"
        BranchSideFuncs:
        - "getLocation(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:175,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:176,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 22
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:124,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 28
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.TopologyException"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.TopologyException:38,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.TopologyException:39,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].check(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].testLinkResultDirectedEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:59,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:60,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:61,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:61,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].testLinkResultDirectedEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].getPotentialResultAreaEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:68,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:69,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:70,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:71,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:72,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:80,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:81,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:82,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:84,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].testLinkResultDirectedEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].getPotentialResultAreaEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:126"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:100,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].getPotentialResultAreaEdges(org.locationtech.jts.geomgraph.DirectedEdgeStar,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:106,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:107,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:108,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:111,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:111,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:115,1"
      Dst: "[org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker].isPotentialResultAreaEdge(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:136,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.ConsistentPolygonRingChecker:136,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int[]"
    - "int"
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getComponent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getCoordinate()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].insert()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter].insert(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter].insert(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter].insert(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation].<init>(org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:27,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:28,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation].<init>(org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter:29,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].delete()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter].delete(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter].delete(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter].delete(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.LineString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter$DeleteVertexOperation].<init>(org.locationtech.jts.geom.LineString,int)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:27,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:28,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter$DeleteVertexOperation].<init>(org.locationtech.jts.geom.LineString,int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:29,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter$DeleteVertexOperation].<init>(org.locationtech.jts.geom.LineString,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter$DeleteVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter$DeleteVertexOperation:40,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].getLength()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:115,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:116,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].toString()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:120,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].toString()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    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)"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].pathString()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    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(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:125,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:128,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:130,1"
      Dst: "[java.lang.StringBuffer].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:132,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].toFacetString()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    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(int)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:137,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:140,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:145,1"
      Dst: "[java.lang.StringBuffer].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryLocation].isVertex()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:150,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:156,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:157,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:157,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryLocation:159,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$13].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$13:165,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$13].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$13"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getInteriorPoint()"
    - "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$13:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getInteriorPoint()"
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$13:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].clipEndpoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].isOnBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].clipEndpoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].isOnBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:34,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].clipEndpoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:50,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:51,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:54,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:57,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:61,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].isOnBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].isOnBoundary(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:43,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].clipEndpoint(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:50,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:51,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:54,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:57,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:61,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineY(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper].intersectionLineX(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.EnvelopeClipper:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.OrientedCoordinateArray"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].orientation(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:39,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].orientation(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.OrientedCoordinateArray].orientation(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.OrientedCoordinateArray"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:50"
        BranchSideFuncs:
        - "increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.OrientedCoordinateArray].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.OrientedCoordinateArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].compareOriented(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:64,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].compareOriented(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.OrientedCoordinateArray].compareOriented(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.noding.OrientedCoordinateArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:95,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 37
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.OrientedCoordinateArray].compareOriented(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.noding.OrientedCoordinateArray"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.OrientedCoordinateArray:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.OrientedCoordinateArray:95,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 37
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10:171,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10:173,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10:173,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToResult()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:302,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:302,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10:160,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbGML_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10:162,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbGML_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbGML_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.IOUtil].toGML(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:257,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:257,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toGML(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:256,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toGML(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:30"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:29"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:30,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:30,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:265,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:26"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:28"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.InfoTool].mousePressed(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelCoordinate(java.awt.Point)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:36,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.BasicTool].toModelCoordinate(java.awt.Point)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.InfoTool:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLConstants].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLConstants"
    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: "org.locationtech.jts.io.gml2.GMLConstants:17,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 19
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].distance()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:60,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:61,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:129,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].distance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 18
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    functionUses: 1
    ICount: 38
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:157"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:166"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:165"
        BranchSideFuncs:
        - "computeMinDistance()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:166"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:165"
        BranchSideFuncs:
        - "computeMinDistance()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:157,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:163,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:163,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:166,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:237"
        BranchSideFuncs:
        - "computeContainmentDistance()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:241"
        BranchSideFuncs:
        - "computeFacetDistance()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:240"
        BranchSideFuncs:
        - "computeFacetDistance()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:239,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:241,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].isWithinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].distance()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:80,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:81,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 766
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 4
    ICount: 49
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:767"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:768"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:770"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:772"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:771"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:772"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:775"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:774"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:776"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:778"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:777"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:778"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:780"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:781"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:781"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:782"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:783"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:782"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:767,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.geom.Envelope:783,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:140,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:117,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].distance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 18
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    functionUses: 1
    ICount: 38
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:157"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:166"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:165"
        BranchSideFuncs:
        - "computeMinDistance()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:166"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:165"
        BranchSideFuncs:
        - "computeMinDistance()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:157,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:163,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:163,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:166,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:94,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:95,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].closestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:109,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:110,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:129,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:178,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:181,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:129,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:140,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:117,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].distance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 18
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    functionUses: 1
    ICount: 38
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:157"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:166"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:165"
        BranchSideFuncs:
        - "computeMinDistance()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:166"
        BranchSideFuncs:
        - "getCoordinate()"
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:165"
        BranchSideFuncs:
        - "computeMinDistance()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:157,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:163,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:163,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:166,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:178,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:181,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].closestPoints()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:193,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestPoints()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:178,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:181,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestLocations()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.operation.distance.GeometryLocation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:204,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:237"
        BranchSideFuncs:
        - "computeContainmentDistance()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:241"
        BranchSideFuncs:
        - "computeFacetDistance()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:240"
        BranchSideFuncs:
        - "computeFacetDistance()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:239,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:241,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].closestLocations()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.operation.distance.GeometryLocation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].nearestLocations()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:215,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].nearestLocations()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].nearestLocations()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.operation.distance.GeometryLocation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:204,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:227"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:237"
        BranchSideFuncs:
        - "computeContainmentDistance()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:241"
        BranchSideFuncs:
        - "computeFacetDistance()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:240"
        BranchSideFuncs:
        - "computeFacetDistance()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:239,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:241,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:250"
        BranchSideFuncs:
        - "computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:249"
        BranchSideFuncs:
        - "computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:248,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(int,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 254
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].getLocations(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.util.List].size()"
    functionUses: 2
    ICount: 29
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:258"
        BranchSideFuncs:
        - "getPolygons(org.locationtech.jts.geom.Geometry)"
        - "size()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:271"
        BranchSideFuncs:
        - "getLocations(org.locationtech.jts.geom.Geometry)"
        - "computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:270"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:257,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:260,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:261,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:262,1"
      Dst: "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].getLocations(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:263,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:282"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:275"
        BranchSideFuncs:
        - "get(int)"
        - "computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:275"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:275,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:276,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:278,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeContainmentDistance(org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.geom.Polygon,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 287
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance.GeometryLocation"
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:296"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:295"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:288,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:290,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:293,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeFacetDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 304
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLines(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.operation.distance.DistanceOp].updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 1
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:327"
        BranchSideFuncs:
        - "computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:332"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:333"
        BranchSideFuncs:
        - "updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
        - "computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:311,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:314,1"
      Dst: "[org.locationtech.jts.geom.util.PointExtracter].getPoints(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:318,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLines(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:319,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].updateMinDistance(org.locationtech.jts.operation.distance.GeometryLocation[],boolean)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:324,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:336,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLines(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 341
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:350"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:349"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:342"
        BranchSideFuncs:
        - "computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:347"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:342"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:342,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:343,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:346,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistancePoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:371"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:370"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:357"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:354"
        BranchSideFuncs:
        - "isEmpty()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:353"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:361"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:368"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:367"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:357"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:354,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:355,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:356,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:362,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:362,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:365,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistanceLinesPoints(java.util.List,java.util.List,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 375
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 29
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:386"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:376"
        BranchSideFuncs:
        - "isEmpty()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:381"
        BranchSideFuncs:
        - "computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:376"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:376,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:377,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:380,1"
      Dst: "[org.locationtech.jts.geom.Point].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:382,1"
      Dst: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 390
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 87
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:393"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:393"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:411"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:410"
        BranchSideFuncs:
        - "segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:414"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:422"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
        - "closestPoints(org.locationtech.jts.geom.LineSegment)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:403"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:391,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:391,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:394,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:400,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:411,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].segmentToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:416,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:418,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:419,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.distance.DistanceOp].computeMinDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionSourceFile: "org.locationtech.jts.operation.distance.DistanceOp"
    linkageType: null
    functionLinenumber: 429
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.operation.distance.GeometryLocation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 48
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:432"
        BranchSideFuncs:
        - "getCoordinate()"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:449"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:448"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:446"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.DistanceOp:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.DistanceOp:432"
        BranchSideFuncs:
        - "getCoordinate()"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:430,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:430,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:433,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:434,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:437,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:441,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:442,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.DistanceOp:443,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.jdom2.filter.ClassFilter].<init>(java.lang.Class)"
    functionSourceFile: "org.jdom2.filter.ClassFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ClassFilter:77,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ClassFilter].filter(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.ClassFilter"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[java.lang.Class].cast(java.lang.Object)"
    functionUses: 9
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ClassFilter:83"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ClassFilter:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.ClassFilter:83,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "org.jdom2.filter.ClassFilter:83,1"
      Dst: "[java.lang.Class].cast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.ClassFilter].toString()"
    functionSourceFile: "org.jdom2.filter.ClassFilter"
    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.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ClassFilter:88,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.filter.ClassFilter:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.filter.ClassFilter:88,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.jdom2.filter.ClassFilter:88,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ClassFilter].equals(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.ClassFilter"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 10
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.filter.ClassFilter:93"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ClassFilter:96"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ClassFilter:95"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.ClassFilter:96"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.ClassFilter:99"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.ClassFilter:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.ClassFilter:97,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.filter.ClassFilter].hashCode()"
    functionSourceFile: "org.jdom2.filter.ClassFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ClassFilter:104,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    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: "org.locationtech.jtstest.function.ConversionFunctions:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].pointsToLine(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:34,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:35,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].lineToPolygon(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:49,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:49,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].toPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:55,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:56,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:57,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:57,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].toGeometryArray(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:118,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].toGeometryArray(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:119,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].toGeometryArray(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:128"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:84"
        BranchSideFuncs:
        - "model()"
        - "getGeometryFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:412,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].toLines(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:62,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:63,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:64,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:64,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].toGeometryArray(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:118,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].toGeometryArray(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:119,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:69,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:71,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:72,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].toGeometryArray(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:118,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].toGeometryArray(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:119,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.PolygonExtracter:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:43"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.PolygonExtracter:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:48"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.GeometryFilter)"
        - "<init>(java.util.List)"
      - BranchSide: "org.locationtech.jts.geom.util.PolygonExtracter:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:41,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:44,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:44,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:157,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:158,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].toGeometryCollection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.function.ConversionFunctions].addComponents(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:78,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:79,1"
      Dst: "[org.locationtech.jtstest.function.ConversionFunctions].addComponents(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:81,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:81,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].addComponents(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:94,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollectionIterator"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry:org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollectionIterator"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    functionUses: 195
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:84"
        BranchSideFuncs:
        - "hasNext()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:79,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollectionIterator"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].isAtomic(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.locationtech.jts.geom.Geometry:org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[java.util.NoSuchElementException].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    functionUses: 199
    ICount: 42
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:103"
        BranchSideFuncs:
        - "isAtomic(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:111"
        BranchSideFuncs:
        - "hasNext()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:113"
        BranchSideFuncs:
        - "getGeometryN(int)"
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:120"
        BranchSideFuncs:
        - "next()"
        - "<init>(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:99,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].isAtomic(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:104,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:105,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:112,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.GeometryCollectionIterator:116,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.GeometryCollectionIterator].isAtomic(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollectionIterator"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollectionIterator:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollectionIterator:124"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].addComponents(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.ConversionFunctions:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.ConversionFunctions:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:94,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].<init>(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:96,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location].<init>(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:109"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,int)"
        - "add(java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:106,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:107,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location].<init>(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter:110,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location].<init>(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$Location:134,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].getLocations()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isDone()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:69,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:70,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].deleteShallowConcavities()"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].collapseLine()"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:108"
        BranchSideFuncs:
        - "deleteShallowConcavities()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:99,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:109,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].deleteShallowConcavities()"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:112,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].collapseLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].deleteShallowConcavities()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 8
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].nextIndex(int)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isDeletable(int,int,int,double)"
    functionUses: 1
    ICount: 33
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:130,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].nextIndex(int)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:137,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isDeletable(int,int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].nextIndex(int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:165"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].collapseLine()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:175"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:170"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:171,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:174,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:176,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isDeletable(int,int,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 7
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isConcave(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:186"
        BranchSideFuncs:
        - "isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:185"
        BranchSideFuncs:
        - "isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:187"
        BranchSideFuncs:
        - "isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:185,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isConcave(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:186,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:188,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallowSampled(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 3
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:214"
        BranchSideFuncs:
        - "isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:212,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isShallow(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:218"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:219,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].isConcave(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier"
    linkageType: null
    functionLinenumber: 224
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:224"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.BufferInputLineSimplifier:225,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    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: "org.locationtech.jts.operation.overlayarea.EdgeVector:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:43,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 1
    returnType: "double"
    argCount: 5
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:58,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:79,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.EdgeVector].area2Term(double,double,double,double,double,double,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.EdgeVector"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "double"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    functionUses: 3
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayarea.EdgeVector:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayarea.EdgeVector:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.EdgeVector:114,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].expectedValuesHeuristic(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:442,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].expectedValuesHeuristic(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:442,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].<init>(int,int,double,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:445,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].expectedValuesHeuristic(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:458,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].binarySearch(int[],int,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:467,1"
      Dst: "[java.util.Arrays].binarySearch(int[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].get(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:474,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].binarySearch(int[],int,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:467,1"
      Dst: "[java.util.Arrays].binarySearch(int[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].set(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].ensureCapacity(int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:511"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:496"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:501"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:507"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:487,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:493,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].binarySearch(int[],int,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:467,1"
      Dst: "[java.util.Arrays].binarySearch(int[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].ensureCapacity(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.util.Arrays].copyOf(double[],int)"
    - "[java.util.Arrays].copyOf(int[],int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:526"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:529"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:528"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:529,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:530,1"
      Dst: "[java.util.Arrays].copyOf(double[],int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:531,1"
      Dst: "[java.util.Arrays].copyOf(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].isValueSet(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:516"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:517,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].indexOf(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].binarySearch(int[],int,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:467,1"
      Dst: "[java.util.Arrays].binarySearch(int[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix].ensureCapacity(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.util.Arrays].copyOf(double[],int)"
    - "[java.util.Arrays].copyOf(int[],int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:526"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:529"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:528"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:529,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:530,1"
      Dst: "[java.util.Arrays].copyOf(double[],int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$CsrMatrix:531,1"
      Dst: "[java.util.Arrays].copyOf(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.ByteArrayInStream].<init>(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteArrayInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.ByteArrayInStream].setBytes(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteArrayInStream:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.ByteArrayInStream:35,1"
      Dst: "[org.locationtech.jts.io.ByteArrayInStream].setBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteArrayInStream].setBytes(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteArrayInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ByteArrayInStream].read(byte[])"
    functionSourceFile: "org.locationtech.jts.io.ByteArrayInStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.ByteArrayInStream:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteArrayInStream:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.ByteArrayInStream:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.ByteArrayInStream:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.ByteArrayInStream:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.ByteArrayInStream:60,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$3:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].clearResult()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$3:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$3:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].clearResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].clearResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultWKTPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel].clearResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].setResult(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1].<init>(double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1:51,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:37,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions].getNoder(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions:37,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1].isFloatingPrecision()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGSnappingFunctions$1"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:35,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:36,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:66,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getNodeEdge(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:76,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getResultAreaEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayGraph:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:91"
        BranchSideFuncs:
        - "isInResultArea()"
        - "getEdges()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayGraph:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:85,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:87,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:88,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].addEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 11
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdgePair(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].insert(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:105,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdgePair(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:107,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].insert(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].insert(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayGraph:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:131"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.edgegraph.HalfEdge)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayGraph:130"
        BranchSideFuncs:
        - "orig()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:119,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:126,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:126,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:128,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].insert(org.locationtech.jts.edgegraph.HalfEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayGraph:131,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].<init>(org.locationtech.jts.geom.LineString,int,boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].init()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:35,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:43,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].isRing()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getMinimumSize()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getParent()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:52,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getResultCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:53,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:56,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].size()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:60,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getComponentPoint()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:64,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:52,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getResultSize()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:69,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getSegment(int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.simplify.TaggedLineSegment"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getResultSegment(int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:84,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:86,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].init()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.simplify.TaggedLineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:91,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:94,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getSegments()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.simplify.TaggedLineSegment[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].addToResult(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:111,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].asLineString()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:116,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:116,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:128,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].asLinearRing()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:120,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:120,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:120,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:128,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].extractCoordinates(java.util.List)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:125,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:128,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].removeRingEndpoint()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].remove(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:138,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:139,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:142,1"
      Dst: "[java.util.List].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.DefaultSAXHandlerFactory].<init>()"
    functionSourceFile: "org.jdom2.input.sax.DefaultSAXHandlerFactory"
    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: "org.jdom2.input.sax.DefaultSAXHandlerFactory:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.DefaultSAXHandlerFactory].createSAXHandler(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.sax.DefaultSAXHandlerFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.jdom2.input.sax.SAXHandler"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.DefaultSAXHandlerFactory$DefaultSAXHandler].<init>(org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.DefaultSAXHandlerFactory:82,1"
      Dst: "[org.jdom2.input.sax.DefaultSAXHandlerFactory$DefaultSAXHandler].<init>(org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.DefaultSAXHandlerFactory$DefaultSAXHandler].<init>(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.sax.DefaultSAXHandlerFactory$DefaultSAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.DefaultSAXHandlerFactory$DefaultSAXHandler:76,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.SAXHandler].<init>(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.sax.SAXHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.jdom2.input.sax.TextBuffer].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    - "[org.jdom2.input.sax.SAXHandler].reset()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.sax.SAXHandler:207"
      Branch Sides:
      - BranchSide: "org.jdom2.input.sax.SAXHandler:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.sax.SAXHandler:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.sax.SAXHandler:206,1"
      Dst: "[org.xml.sax.helpers.DefaultHandler].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:129,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.input.sax.SAXHandler:133,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:136,1"
      Dst: "[org.jdom2.input.sax.TextBuffer].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:139,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:207,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    - Src: "org.jdom2.input.sax.SAXHandler:208,1"
      Dst: "[org.jdom2.input.sax.SAXHandler].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22:263,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDeleteVertex()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDeleteVertex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeDeleteVertex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.DeleteByBoxTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplify(org.locationtech.jts.geom.Geometry[],double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageSimplifier].<init>(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].simplify(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:64,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].<init>(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:65,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].simplify(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].<init>(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplify(double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].getEdges()"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:102,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:103,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].getEdges()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:103,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:104,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.coverage.CoverageRingEdges"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].<init>(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:57,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].<init>(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].<init>(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].build()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:65,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:67,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:68,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:69,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].build()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].findMultiRingNodes(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].findBoundarySegments(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].findBoundaryNodes(java.util.Set)"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].addRingEdges(org.locationtech.jts.geom.LinearRing,java.util.Set,java.util.Set,java.util.HashMap)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:93,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].findMultiRingNodes(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:94,1"
      Dst: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].findBoundarySegments(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:95,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].findBoundaryNodes(java.util.Set)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:95,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:96,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:98,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:99,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:102,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:106,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:107,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].addRingEdges(org.locationtech.jts.geom.LinearRing,java.util.Set,java.util.Set,java.util.HashMap)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:109,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:110,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:112,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].findMultiRingNodes(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.VertexRingCounter].count(org.locationtech.jts.geom.Geometry[])"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:251"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:246,1"
      Dst: "[org.locationtech.jts.coverage.VertexRingCounter].count(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:247,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:248,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:248,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:248,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:248,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:249,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:249,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:250,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.VertexRingCounter].count(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.VertexRingCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].<init>(java.util.Map)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.VertexRingCounter:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.VertexRingCounter:38"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.VertexRingCounter:34,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.coverage.VertexRingCounter:35,1"
      Dst: "[org.locationtech.jts.coverage.VertexRingCounter].<init>(java.util.Map)"
    - Src: "org.locationtech.jts.coverage.VertexRingCounter:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.VertexRingCounter].<init>(java.util.Map)"
    functionSourceFile: "org.locationtech.jts.coverage.VertexRingCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.VertexRingCounter:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].findBoundarySegments(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].<init>(java.util.Set)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:36,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:37,1"
      Dst: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].<init>(java.util.Set)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:39,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].findBoundaryNodes(java.util.Set)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Collection].stream()"
    - "[org.locationtech.jts.coverage.CoverageRingEdges$lambda_findBoundaryNodes_0__2].bootstrap$()"
    - "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges$getKey__3].bootstrap$()"
    - "[java.util.stream.Stream].map(java.util.function.Function)"
    - "[java.util.stream.Collectors].toSet()"
    - "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:269,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:270,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:270,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:270,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:271,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:271,1"
      Dst: "[java.util.Map].getOrDefault(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:271,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:271,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:274,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:274,1"
      Dst: "[java.util.Collection].stream()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:274,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges$lambda_findBoundaryNodes_0__2].bootstrap$()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:275,1"
      Dst: "[java.util.stream.Stream].filter(java.util.function.Predicate)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:275,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges$getKey__3].bootstrap$()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:276,1"
      Dst: "[java.util.stream.Stream].map(java.util.function.Function)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:276,1"
      Dst: "[java.util.stream.Collectors].toSet()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:276,1"
      Dst: "[java.util.stream.Stream].collect(java.util.stream.Collector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].addRingEdges(org.locationtech.jts.geom.LinearRing,java.util.Set,java.util.Set,java.util.HashMap)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.util.Set"
    - "java.util.Set"
    - "java.util.HashMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].addBoundaryInnerNodes(org.locationtech.jts.geom.LinearRing,java.util.Set,java.util.Set)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].extractRingEdges(org.locationtech.jts.geom.LinearRing,java.util.HashMap,java.util.Set)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:122,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].addBoundaryInnerNodes(org.locationtech.jts.geom.LinearRing,java.util.Set,java.util.Set)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:123,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].extractRingEdges(org.locationtech.jts.geom.LinearRing,java.util.HashMap,java.util.Set)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:125,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].addBoundaryInnerNodes(org.locationtech.jts.geom.LinearRing,java.util.Set,java.util.Set)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.util.Set"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isBoundarySegment(java.util.Set,org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:139,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:140,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:141,1"
      Dst: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isBoundarySegment(java.util.Set,org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:146,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isBoundarySegment(java.util.Set,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:45,1"
      Dst: "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].createSegment(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.coverage.CoverageBoundarySegmentFinder:46,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].extractRingEdges(org.locationtech.jts.geom.LinearRing,java.util.HashMap,java.util.Set)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.util.HashMap"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].findNextNodeIndex(org.locationtech.jts.geom.Coordinate[],int,java.util.Set)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].createEdge(org.locationtech.jts.geom.Coordinate[],java.util.HashMap)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].createEdge(org.locationtech.jts.geom.Coordinate[],int,int,java.util.HashMap)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:156,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:158,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:159,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:164,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].findNextNodeIndex(org.locationtech.jts.geom.Coordinate[],int,java.util.Set)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:167,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].createEdge(org.locationtech.jts.geom.Coordinate[],java.util.HashMap)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:168,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:175,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].createEdge(org.locationtech.jts.geom.Coordinate[],int,int,java.util.HashMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 7
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:406"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:405"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:405,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:406,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:407,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].findNextNodeIndex(org.locationtech.jts.geom.Coordinate[],int,java.util.Set)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].next(int,org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:223"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:218,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].next(int,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:225,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].next(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:235"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].createEdge(org.locationtech.jts.geom.Coordinate[],java.util.HashMap)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.coverage.CoverageEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.util.HashMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoverageEdge].createEdge(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoverageEdge].incRingCount()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:186,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:187,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:188,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:191,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].createEdge(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:192,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:193,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:195,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].incRingCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.CoverageEdge].findDistinctPoint(org.locationtech.jts.geom.Coordinate[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:81,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:86,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].findDistinctPoint(org.locationtech.jts.geom.Coordinate[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:89,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].findDistinctPoint(org.locationtech.jts.geom.Coordinate[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "boolean"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:121,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:133,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].createEdge(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.coverage.CoverageEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].extractEdgePoints(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:34,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].extractEdgePoints(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:35,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].extractEdgePoints(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:62,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:140,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].incRingCount()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].createEdge(org.locationtech.jts.geom.Coordinate[],int,int,java.util.HashMap)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.coverage.CoverageEdge"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    - "java.util.HashMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoverageEdge].createEdge(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.coverage.CoverageEdge].incRingCount()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:201,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:201,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:202,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:203,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:206,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].createEdge(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:207,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:208,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:210,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].incRingCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].key(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.CoverageEdge].findDistinctPoint(org.locationtech.jts.geom.Coordinate[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:104,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:108,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].findDistinctPoint(org.locationtech.jts.geom.Coordinate[],int,boolean,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:114,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].createEdge(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.coverage.CoverageEdge"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].extractEdgePoints(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:40,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].extractEdgePoints(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:41,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].getEdges()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:128,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:129,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:130,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:133,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].toLineString(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:46,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:48,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:49,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].toLineString(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:51,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].toLineString(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:180,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:180,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.BitSet"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.BitSet].<init>(int)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].isFreeRing()"
    - "[java.util.BitSet].set(int,boolean)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageSimplifier:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageSimplifier:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:143,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:143,1"
      Dst: "[java.util.BitSet].<init>(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:145,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:145,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].isFreeRing()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:145,1"
      Dst: "[java.util.BitSet].set(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].isFreeRing()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.BitSet"
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].setFreeRingIndices(java.util.BitSet)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].setConstraints(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:77,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:78,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].setFreeRingIndices(java.util.BitSet)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:79,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].setConstraints(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:80,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].setFreeRingIndices(java.util.BitSet)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.BitSet"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].setConstraints(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:106,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:109,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:110,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:113,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:115,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:116,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:117,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[java.util.BitSet].get(int)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].<init>(org.locationtech.jts.geom.LineString,boolean,double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:123,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:126,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:127,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:128,1"
      Dst: "[java.util.BitSet].get(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:129,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].<init>(org.locationtech.jts.geom.LineString,boolean,double)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:129,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].<init>(org.locationtech.jts.geom.LineString,boolean,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.simplify.LinkedLine].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:153,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:156,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:157,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:159,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:160,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:162,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:165,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.LinkedLine].createNextLinks(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].createPrevLinks(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:28"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:29,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:31,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.LinkedLine:33,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].createNextLinks(int)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:34,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].createPrevLinks(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:173"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].createNextLinks(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:52"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].createPrevLinks(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].build()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:61,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].isItemsNodeEmpty(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].isNodeEmpty(int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:234"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.VertexSequencePackedRtree:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.VertexSequencePackedRtree:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:226,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].isItemsNodeEmpty(int)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:236,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].isNodeEmpty(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:293,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:293,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:295,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:300"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:298,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:299,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    - "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].simplify(org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:134,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].simplify(org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].simplify(org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].createQueue()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.coverage.Corner].isRemoved()"
    - "[org.locationtech.jts.coverage.Corner].getArea()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].isRemovable(org.locationtech.jts.coverage.Corner,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].removeCorner(org.locationtech.jts.coverage.Corner,java.util.PriorityQueue)"
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:182,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].createQueue()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:183,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:184,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:185,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:187,1"
      Dst: "[org.locationtech.jts.coverage.Corner].isRemoved()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:191,1"
      Dst: "[org.locationtech.jts.coverage.Corner].getArea()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:193,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].isRemovable(org.locationtech.jts.coverage.Corner,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:194,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].removeCorner(org.locationtech.jts.coverage.Corner,java.util.PriorityQueue)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:197,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].createQueue()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.PriorityQueue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:201,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:202,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:205,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].<init>(org.locationtech.jts.simplify.LinkedLine,int)"
    - "[org.locationtech.jts.coverage.Corner].getArea()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:212,1"
      Dst: "[org.locationtech.jts.coverage.Corner].<init>(org.locationtech.jts.simplify.LinkedLine,int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:213,1"
      Dst: "[org.locationtech.jts.coverage.Corner].getArea()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:214,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.Corner].<init>(org.locationtech.jts.simplify.LinkedLine,int)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.LinkedLine"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - "[org.locationtech.jts.coverage.Corner].area(org.locationtech.jts.simplify.LinkedLine,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.Corner:31,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - Src: "org.locationtech.jts.coverage.Corner:32,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - Src: "org.locationtech.jts.coverage.Corner:33,1"
      Dst: "[org.locationtech.jts.coverage.Corner].area(org.locationtech.jts.simplify.LinkedLine,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].area(org.locationtech.jts.simplify.LinkedLine,int)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.LinkedLine"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].prevCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].nextCoordinate(int)"
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:63,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prevCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:64,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:65,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].nextCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:66,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].getArea()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:178,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].size()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].isRemoved()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:115,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - Src: "org.locationtech.jts.coverage.Corner:115,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].isRemovable(org.locationtech.jts.coverage.Corner,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    - "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].envelope()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].hasIntersectingVertex(org.locationtech.jts.coverage.Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - "[org.locationtech.jts.coverage.Corner].isBaseline(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:220,1"
      Dst: "[org.locationtech.jts.coverage.Corner].envelope()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:224,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].hasIntersectingVertex(org.locationtech.jts.coverage.Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:229,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:230,1"
      Dst: "[org.locationtech.jts.coverage.Corner].isBaseline(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.coverage.Corner].envelope()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:84,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:87,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.Corner:88,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex:308,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].hasIntersectingVertex(org.locationtech.jts.coverage.Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getCoordinate(int)"
    - "[org.locationtech.jts.coverage.Corner].isVertex(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.Corner].intersects(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:248,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:251,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:253,1"
      Dst: "[org.locationtech.jts.coverage.Corner].isVertex(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:257,1"
      Dst: "[org.locationtech.jts.coverage.Corner].intersects(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:264,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.VertexSequencePackedRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:162,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>()"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:164,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].queryNode(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.util.IntArrayList)"
    - Src: "org.locationtech.jts.index.VertexSequencePackedRtree:165,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:170,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].isVertex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:93,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:93,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.Corner].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:108,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.Corner:111,1"
      Dst: "[org.locationtech.jts.geom.Triangle].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:110,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:113,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].hasCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:114,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:114,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.simplify.LinkedLine:118,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:120,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.coverage.Corner].isBaseline(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].prev()"
    - "[org.locationtech.jts.coverage.Corner].next()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.Corner:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.Corner:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.Corner:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.Corner:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.Corner:100,1"
      Dst: "[org.locationtech.jts.coverage.Corner].prev()"
    - Src: "org.locationtech.jts.coverage.Corner:101,1"
      Dst: "[org.locationtech.jts.coverage.Corner].next()"
    - Src: "org.locationtech.jts.coverage.Corner:102,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].removeCorner(org.locationtech.jts.coverage.Corner,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].getIndex()"
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].remove(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:277,1"
      Dst: "[org.locationtech.jts.coverage.Corner].getIndex()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:278,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:279,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:280,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].remove(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:281,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:284,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.Corner].getIndex()"
    functionSourceFile: "org.locationtech.jts.coverage.Corner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].remove(int)"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.LinkedLine:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.LinkedLine:103"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.coverage.CoverageEdge].setCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageSimplifier:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageSimplifier:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:137,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].setCoordinates(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].setCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygonal(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:288"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:287,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygonal(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygonal(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygon(org.locationtech.jts.geom.Polygon)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:294,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:297,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygon(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].buildMultiPolygon(org.locationtech.jts.geom.MultiPolygon)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:305"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:302,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:304,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:304,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:306,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:306,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:310,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:310,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:312,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:313,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:313,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:317,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:320,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].buildRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.List].size()"
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.CoordinateList].getCoordinate(int)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].isEdgeDirForward(java.util.List,int,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:329"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:328"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:336"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:324,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:327,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:329,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:330,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:331,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:332,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:334,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].isEdgeDirForward(java.util.List,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:335,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:335,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:335,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:337,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:338,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:338,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].get(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:66,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].isEdgeDirForward(java.util.List,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].getEndCoordinate()"
    - "[org.locationtech.jts.coverage.CoverageEdge].getStartCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:350"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:342,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:348,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:348,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].getEndCoordinate()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:349,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].getStartCoordinate()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:349,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].getEndCoordinate()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].getStartCoordinate()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionUses: 1
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyInner(org.locationtech.jts.geom.Geometry[],double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageSimplifier].<init>(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyInner(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:78,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].<init>(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:79,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyInner(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].<init>(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyInner(double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].selectEdges(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:117,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:118,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].selectEdges(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:120,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:122,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:123,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.coverage.CoverageRingEdges"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].<init>(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:57,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].<init>(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].selectEdges(int)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.CoverageEdge].getRingCount()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:83,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:84,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:84,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:85,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].getRingCount()"
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:86,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].getRingCount()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].toLineString(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageEdge:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageEdge:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageEdge:46,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:48,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:49,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].toLineString(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageEdge:51,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:128,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:129,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:130,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:133,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageRingEdges"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygonal(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageRingEdges:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageRingEdges:288"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageRingEdges:287,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildPolygonal(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].<init>(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplify(double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].getEdges()"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:102,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:103,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].getEdges()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:103,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:104,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyInner(double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].selectEdges(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:117,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].create(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:118,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].selectEdges(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:120,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:122,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:123,1"
      Dst: "[org.locationtech.jts.coverage.CoverageRingEdges].buildCoverage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].simplifyEdges(java.util.List,org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:128,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].createLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:129,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:130,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:133,1"
      Dst: "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].setCoordinates(java.util.List,org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.MultiLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.coverage.CoverageEdge].setCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageSimplifier:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageSimplifier:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:137,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:138,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].setCoordinates(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.CoverageSimplifier].getFreeRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.coverage.CoverageSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.BitSet"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.BitSet].<init>(int)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.CoverageEdge].isFreeRing()"
    - "[java.util.BitSet].set(int,boolean)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.CoverageSimplifier:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.CoverageSimplifier:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:143,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:143,1"
      Dst: "[java.util.BitSet].<init>(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:145,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:145,1"
      Dst: "[org.locationtech.jts.coverage.CoverageEdge].isFreeRing()"
    - Src: "org.locationtech.jts.coverage.CoverageSimplifier:145,1"
      Dst: "[java.util.BitSet].set(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:549,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:550,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix].get(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.util.HashMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - "[java.lang.Double].doubleValue()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:555,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:555,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:555,1"
      Dst: "[java.util.HashMap].getOrDefault(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:555,1"
      Dst: "[java.lang.Double].doubleValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix].set(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Double].valueOf(double)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:560,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:560,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:560,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix].isValueSet(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:565,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$HashMapMatrix:565,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:29,1"
      Dst: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:30,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:35,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reducePointwise(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:43"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "reducePointwise(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:41,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:44,1"
      Dst: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reducePointwise(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:45,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:45,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reducePointwise(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:49,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:52,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:52,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:53,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reducePointwise(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:49,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:52,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:52,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.precision.PointwisePrecisionReducerTransformer:53,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:56,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:57,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:110,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:124,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:140,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:142,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:145,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:191,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:193,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:204,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:207,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:222,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:223,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:229,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:234,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:234,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:237,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:287,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].findBestFitPlane(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.math.Plane3D].closestAxisPlane()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:44,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].findBestFitPlane(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:45,1"
      Dst: "[org.locationtech.jts.math.Plane3D].closestAxisPlane()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].findBestFitPlane(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.Plane3D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averagePoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averageNormal(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.math.Plane3D].<init>(org.locationtech.jts.math.Vector3D,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:62,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:62,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:63,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averagePoint(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:64,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].averageNormal(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:65,1"
      Dst: "[org.locationtech.jts.math.Plane3D].<init>(org.locationtech.jts.math.Vector3D,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Plane3D].closestAxisPlane()"
    functionSourceFile: "org.locationtech.jts.math.Plane3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].getX()"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.math.Vector3D].getY()"
    - "[org.locationtech.jts.math.Vector3D].getZ()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Plane3D:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Plane3D:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.Plane3D:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Plane3D:74,1"
      Dst: "[org.locationtech.jts.math.Vector3D].getX()"
    - Src: "org.locationtech.jts.math.Plane3D:74,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.math.Plane3D:75,1"
      Dst: "[org.locationtech.jts.math.Vector3D].getY()"
    - Src: "org.locationtech.jts.math.Plane3D:76,1"
      Dst: "[org.locationtech.jts.math.Vector3D].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:263"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:257,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:259,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:260,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:266,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:270,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:274,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 14
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Point"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:474"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:467"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:466"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:457"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:451,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:453,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:453,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:454,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:457,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:459,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:461,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:467,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:467,1"
      Dst: "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:467,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:469,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:468,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:148,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:149,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:150,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].project(org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:151,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Point"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distancePointSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:522"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:521"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:512"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:505"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:506,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:507,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:510,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distancePointSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:513,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:514,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:515,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:515,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distancePointSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithms3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals3D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:44,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals3D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:45,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:61,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:62,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:63,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:80,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals3D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:329,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:330,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithms3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:34"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:32,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:32,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:33,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:38,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "org.locationtech.jts.operation.distance.GeometryLocation"
    - "org.locationtech.jts.operation.distance.GeometryLocation"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:182"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.math.Plane3D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Plane3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.math.Vector3D)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.math.Vector3D].length()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.Plane3D:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.Plane3D:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.Plane3D:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.Plane3D:54,1"
      Dst: "[org.locationtech.jts.math.Vector3D].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.math.Plane3D:55,1"
      Dst: "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.math.Vector3D)"
    - Src: "org.locationtech.jts.math.Plane3D:56,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.math.Plane3D:57,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.Plane3D:58,1"
      Dst: "[org.locationtech.jts.math.Vector3D].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.LineString"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].intersection(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:386,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].intersection(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:389,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:389,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:388,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:397,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:397,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:399,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:401,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].intersection(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].segmentPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:411"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:436"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:444"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:443"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:407,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:408,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:412,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:414,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:414,1"
      Dst: "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:437,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].segmentPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:439,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].segmentPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:554"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:553"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:555"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:553,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:556,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:559,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:560,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:130,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:130,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:133,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D:134,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.LineString"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distanceSegmentSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:483"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:483"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:480,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:485,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distanceSegmentSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:490,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:492,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:493,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:493,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distanceSegmentSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.CGAlgorithms3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals3D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distancePointSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 106
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.CGAlgorithms3D:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.CGAlgorithms3D:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:101,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals3D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:102,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distancePointSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:109,1"
      Dst: "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:116,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:117,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:159,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.algorithm.CGAlgorithms3D:159,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 20
  - functionName: "[org.locationtech.jts.math.Vector3D].dot(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.math.Vector3D"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.Vector3D:38,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 552
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 50
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:578"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:587"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:586"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
        - "closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:589"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:594"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:553,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].intersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.geom.LineSegment:566,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:567,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Polygon"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonRings(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:356,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonRings(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:358,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:359,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonRings(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Polygon"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:380"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:379"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:374"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:372,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:372,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:375,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:377,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:243,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:245,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:246,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:251,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePointPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:296"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:295"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:299"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:293,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePointPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:297,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:301,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:301,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:311,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:315,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:329,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePointPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Point,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.geom.Point"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:534"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:526,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:525,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:530,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:529,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].isWithinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:73,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:74,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:124,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:140,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:142,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:145,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].nearestPoints(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].nearestPoints()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:88,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:89,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].nearestPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:110,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].nearestPoints()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:156,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:158,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:191,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:193,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:110,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:124,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].distance()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:140,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:142,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:145,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].nearestPoints()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:156,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:158,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].nearestLocations()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.operation.distance.GeometryLocation[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:170,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:191,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:193,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "org.locationtech.jts.operation.distance.GeometryLocation"
    - "org.locationtech.jts.operation.distance.GeometryLocation"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:182"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:191,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:193,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].mostPolygonalIndex()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:204,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:207,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:222,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:223,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceMultiMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:229,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:234,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:234,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:237,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 13
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:249"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:243,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:245,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:246,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:251,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:263"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:257,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:259,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:260,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceOneMulti(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:266,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:270,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:274,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 14
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:287,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePointPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:296"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:295"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:299"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:293,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePointPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:297,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:301,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].polyPlane(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:301,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:311,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:315,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:329,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPolygon(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Polygon"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonRings(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:356,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonRings(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:358,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:359,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonRings(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Polygon,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Polygon"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:380"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:379"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:374"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:372,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:372,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:375,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:377,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonLine(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.LineString"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].intersection(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:386,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].intersection(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:389,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:389,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:388,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:397,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:397,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:399,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:401,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].intersection(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].segmentPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:411"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:446"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:445"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:437"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:436"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:444"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:443"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:407,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:408,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:412,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:414,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:414,1"
      Dst: "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:437,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].segmentPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:439,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePolygonPoint(org.locationtech.jts.operation.distance3d.PlanarPolygon3D,org.locationtech.jts.geom.Point,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.distance3d.PlanarPolygon3D"
    - "org.locationtech.jts.geom.Point"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:474"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:458"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:467"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:466"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:457"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:451,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:453,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPolygon()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:453,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:454,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:457,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:459,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:461,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:467,1"
      Dst: "[org.locationtech.jts.operation.distance3d.PlanarPolygon3D].getPlane()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:467,1"
      Dst: "[org.locationtech.jts.math.Plane3D].orientedDistance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:467,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:469,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:468,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLineLine(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.LineString,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.LineString"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distanceSegmentSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:483"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:483"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:480,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:485,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distanceSegmentSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:490,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:492,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoints(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:493,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:493,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistanceLinePoint(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Point,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Point"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distancePointSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:522"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:521"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:512"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:505"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:506,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:507,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:510,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distancePointSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:513,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:514,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:515,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:515,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].computeMinDistancePointPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Point,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.geom.Point"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:534"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:526,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:525,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithms3D].distance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:530,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:529,1"
      Dst: "[org.locationtech.jts.operation.distance3d.Distance3DOp].updateDistance(double,org.locationtech.jts.operation.distance.GeometryLocation,org.locationtech.jts.operation.distance.GeometryLocation,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance3d.Distance3DOp].segmentPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.Distance3DOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:554"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:553"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance3d.Distance3DOp:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.Distance3DOp:555"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:553,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:556,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:559,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.operation.distance3d.Distance3DOp:560,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].<init>()"
    functionSourceFile: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractXMLOutputProcessor].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:181,1"
      Dst: "[org.jdom2.output.support.AbstractXMLOutputProcessor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeAttributeEntities(java.lang.String,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.support.FormatStack].<init>(org.jdom2.output.Format)"
    - "[org.jdom2.output.support.AbstractXMLOutputProcessor].attributeEscapedEntitiesFilter(java.io.Writer,org.jdom2.output.support.FormatStack,java.lang.String)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:195,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:197,1"
      Dst: "[org.jdom2.output.support.FormatStack].<init>(org.jdom2.output.Format)"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:197,1"
      Dst: "[org.jdom2.output.support.AbstractXMLOutputProcessor].attributeEscapedEntitiesFilter(java.io.Writer,org.jdom2.output.support.FormatStack,java.lang.String)"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:201,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].escapeElementEntities(java.lang.String,org.jdom2.output.Format)"
    functionSourceFile: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.output.Format"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.Format].getEscapeStrategy()"
    - "[org.jdom2.output.Format].getLineSeparator()"
    - "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:216,1"
      Dst: "[org.jdom2.output.Format].getEscapeStrategy()"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:216,1"
      Dst: "[org.jdom2.output.Format].getLineSeparator()"
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:216,1"
      Dst: "[org.jdom2.output.Format].escapeText(org.jdom2.output.EscapeStrategy,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].<init>(org.jdom2.output.XMLOutputter$1)"
    functionSourceFile: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.output.XMLOutputter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter$DefaultXMLProcessor:181,1"
      Dst: "[org.jdom2.output.XMLOutputter$DefaultXMLProcessor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].<init>()"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    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: "org.locationtech.jts.io.twkb.Varint:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    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: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].zigzagDecode(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    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: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(long)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeSignedVarLong(long,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(long)"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarLong(long,java.io.DataOutput)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:73,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(long)"
    - Src: "org.locationtech.jts.io.twkb.Varint:73,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarLong(long,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarLong(long,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutput].writeByte(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:89,1"
      Dst: "[java.io.DataOutput].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeSignedVarInt(int,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    - "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:100,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    - Src: "org.locationtech.jts.io.twkb.Varint:100,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].zigZagEncode(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    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: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutput].writeByte(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:109,1"
      Dst: "[java.io.DataOutput].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.Varint].writeUnsignedVarInt(int,java.io.DataOutput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.io.DataOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutput].writeByte(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:109,1"
      Dst: "[java.io.DataOutput].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readSignedVarLong(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:124,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarLong(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInput].readByte()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.Varint:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:145,1"
      Dst: "[java.io.DataInput].readByte()"
    - Src: "org.locationtech.jts.io.twkb.Varint:149,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readSignedVarInt(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:163,1"
      Dst: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInput].readByte()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.Varint:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:182,1"
      Dst: "[java.io.DataInput].readByte()"
    - Src: "org.locationtech.jts.io.twkb.Varint:186,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(java.io.DataInput)"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.io.DataInput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInput].readByte()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.Varint:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:182,1"
      Dst: "[java.io.DataInput].readByte()"
    - Src: "org.locationtech.jts.io.twkb.Varint:186,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.twkb.Varint].readUnsignedVarInt(byte[])"
    functionSourceFile: "org.locationtech.jts.io.twkb.Varint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.Varint:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.Varint:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.Varint:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.Varint:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.Varint:195,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].<init>(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeEdge"
    linkageType: null
    functionLinenumber: 27
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Edge].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeEdge:28,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OrientationFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OrientationFunctions"
    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: "org.locationtech.jtstest.function.OrientationFunctions:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OrientationFunctions].isCCW(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OrientationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OrientationFunctions].getRing(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:26"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:25"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:24,1"
      Dst: "[org.locationtech.jtstest.function.OrientationFunctions].getRing(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:26,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OrientationFunctions].getRing(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OrientationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 8
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:152"
        BranchSideFuncs:
        - "getCoordinateN(int)"
        - "getNumPoints()"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:150,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.LineString:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OrientationFunctions].orientationIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OrientationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:31"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:30"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:32"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:30,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:31,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:33,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:36,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OrientationFunctions].getRing(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OrientationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OrientationFunctions:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OrientationFunctions:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jtstest.function.OrientationFunctions:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.simplify.VWSimplifier].getResultGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:61,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:62,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:63,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWSimplifier:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].getResultGeometry()"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].<init>(boolean,double)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWSimplifier:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:122,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:123,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:125,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].<init>(boolean,double)"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].<init>(boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier$VWTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier$VWTransformer:134,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - "[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: 55
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:120"
        BranchSideFuncs:
        - "transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:122"
        BranchSideFuncs:
        - "transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:124"
        BranchSideFuncs:
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:126"
        BranchSideFuncs:
        - "transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:128"
        BranchSideFuncs:
        - "transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:130"
        BranchSideFuncs:
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:132"
        BranchSideFuncs:
        - "transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:135"
        BranchSideFuncs:
        - "transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:119,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:123,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:127,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:129,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:131,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:133,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWSimplifier:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].setEnsureValid(boolean)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].getResultGeometry()"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].<init>(boolean,double)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.VWSimplifier:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.VWSimplifier:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:122,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:123,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:125,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].<init>(boolean,double)"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$15].<init>(org.locationtech.jts.operation.distance.IndexedFacetDistance,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$15:184,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$15].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$15:186,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance].isWithinDistance(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.IndexedFacetDistance:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.IndexedFacetDistance:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.IndexedFacetDistance:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:185,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:185,1"
      Dst: "[org.locationtech.jts.geom.Envelope].distance(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:189,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder].build(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance:190,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].isWithinDistance(org.locationtech.jts.index.strtree.STRtree,org.locationtech.jts.index.strtree.ItemDistance,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions$1].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions$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: "org.locationtech.jtstest.function.OverlayNoSnapFunctions$1:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions$1].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNoSnapFunctions$1:30,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNoSnapFunctions$1].isFloatingPrecision()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNoSnapFunctions$1"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].<init>(org.locationtech.jts.noding.snapround.SnapRoundingNoder,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2"
    linkageType: null
    functionLinenumber: 303
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:304,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder$2].visit(org.locationtech.jts.index.kdtree.KdNode)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2"
    linkageType: null
    functionLinenumber: 307
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.kdtree.KdNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].isNode()"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:315"
        BranchSideFuncs:
        - "addIntersection(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:315"
        BranchSideFuncs:
        - "addIntersection(org.locationtech.jts.geom.Coordinate,int)"
      - BranchSide: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:308,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:312,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].isNode()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:312,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:312,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder$2:313,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].isNode()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:186,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersectionNode(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].<init>(org.locationtech.jts.operation.overlayng.OverlayPoints,java.util.HashMap)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints$1"
    linkageType: null
    functionLinenumber: 160
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayPoints"
    - "java.util.HashMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:161,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints$1"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].access$000(org.locationtech.jts.operation.overlayng.OverlayPoints)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].roundCoord(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.HashMap].containsKey(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:166"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:169"
        BranchSideFuncs:
        - "access$000(org.locationtech.jts.operation.overlayng.OverlayPoints)"
        - "roundCoord(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.PrecisionModel)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].access$000(org.locationtech.jts.operation.overlayng.OverlayPoints)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].roundCoord(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:176,1"
      Dst: "[java.util.HashMap].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints$1:177,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].access$000(org.locationtech.jts.operation.overlayng.OverlayPoints)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 42
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayPoints"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayPoints].roundCoord(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayPoints"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayPoints:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayPoints:195"
        BranchSideFuncs:
        - "copy()"
        - "makePrecise(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:193,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:194,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isFloating(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:196,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayPoints:197,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMXPath:128"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:131"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:129,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrap(java.util.List)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMXPath:145"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:144,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:144,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:145,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:145,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:146,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:146,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:146,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMXPath:128"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:131"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:129,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.XPath].<init>()"
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].<init>()"
    - "[org.jdom2.xpath.jaxen.JDOMXPath].setXPath(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:161,1"
      Dst: "[org.jdom2.xpath.XPath].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:116,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:162,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMXPath].setXPath(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].selectNodes(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - "[org.jaxen.XPath].selectNodes(java.lang.Object)"
    - "[org.jdom2.xpath.jaxen.JDOMXPath].unWrap(java.util.List)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[org.jaxen.JaxenException].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:182,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:184,1"
      Dst: "[org.jaxen.XPath].selectNodes(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:184,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrap(java.util.List)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:186,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:186,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:186,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:186,1"
      Dst: "[org.jaxen.JaxenException].getMessage()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:186,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:186,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:184,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].clear()"
    - "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:85"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:86"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:89"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:91"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:82,1"
      Dst: "[java.util.HashMap].clear()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:86,1"
      Dst: "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    functionSourceFile: "org.jdom2.xpath.jaxen.NamespaceContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getNamespacesInScope()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Element].getNamespacePrefix()"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].getAdditionalNamespaces()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.TreeMap].containsKey(java.lang.Object)"
    - "[org.jdom2.Element].getAttributes()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Content].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.TreeMap].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[java.util.TreeMap].values()"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:1723"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1730"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1729"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1724"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1730"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1729"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1725"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1728"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1727"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1730"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1740"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1739"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1731"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1740"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1739"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1733"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1736"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1735"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1741"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1749"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1748"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1742"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1749"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1748"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1743"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1746"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:1745"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1749"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1753"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:1749"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:1753"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:1720,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.jdom2.Element:1721,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:1721,1"
      Dst: "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Element:1722,1"
      Dst: "[org.jdom2.Element].getNamespacePrefix()"
    - Src: "org.jdom2.Element:1722,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[org.jdom2.Element].getAdditionalNamespaces()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.Element:1724,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.Element:1725,1"
      Dst: "[java.util.TreeMap].containsKey(java.lang.Object)"
    - Src: "org.jdom2.Element:1731,1"
      Dst: "[org.jdom2.Element].getAttributes()"
    - Src: "org.jdom2.Element:1732,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.Element:1740,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.Element:1742,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.Element:1754,1"
      Dst: "[java.util.TreeMap].size()"
    - Src: "org.jdom2.Element:1754,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.Element:1755,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.jdom2.Element:1756,1"
      Dst: "[java.util.TreeMap].remove(java.lang.Object)"
    - Src: "org.jdom2.Element:1757,1"
      Dst: "[java.util.TreeMap].values()"
    - Src: "org.jdom2.Element:1757,1"
      Dst: "[java.util.ArrayList].addAll(java.util.Collection)"
    - Src: "org.jdom2.Element:1759,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 22
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrap(java.util.List)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMXPath:145"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:144,1"
      Dst: "[java.util.List].size()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:144,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:145,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:145,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:146,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:146,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:146,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - "[java.util.HashMap].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:77,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:78,1"
      Dst: "[java.util.HashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMCoreNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].clear()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMCoreNavigator:95,1"
      Dst: "[java.util.IdentityHashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].selectSingleNode(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - "[org.jaxen.XPath].selectSingleNode(java.lang.Object)"
    - "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[org.jaxen.JaxenException].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:212,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:214,1"
      Dst: "[org.jaxen.XPath].selectSingleNode(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:214,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:216,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:216,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:216,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:216,1"
      Dst: "[org.jaxen.JaxenException].getMessage()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:216,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:216,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:214,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].clear()"
    - "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:85"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:86"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:89"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:91"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:82,1"
      Dst: "[java.util.HashMap].clear()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:86,1"
      Dst: "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].unWrapNS(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMXPath:128"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:131"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:129,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getNamespace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - "[java.util.HashMap].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:77,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:78,1"
      Dst: "[java.util.HashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].valueOf(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - "[org.jaxen.XPath].stringValueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[org.jaxen.JaxenException].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:239,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:241,1"
      Dst: "[org.jaxen.XPath].stringValueOf(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:243,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:243,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:243,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:243,1"
      Dst: "[org.jaxen.JaxenException].getMessage()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:243,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:243,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:241,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].clear()"
    - "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:85"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:86"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:89"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:91"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:82,1"
      Dst: "[java.util.HashMap].clear()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:86,1"
      Dst: "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - "[java.util.HashMap].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:77,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:78,1"
      Dst: "[java.util.HashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].numberValueOf(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.Number"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - "[org.jaxen.XPath].numberValueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[org.jaxen.JaxenException].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:269,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:271,1"
      Dst: "[org.jaxen.XPath].numberValueOf(java.lang.Object)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:273,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:273,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:273,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:273,1"
      Dst: "[org.jaxen.JaxenException].getMessage()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:273,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:273,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:271,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].clear()"
    - "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:85"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:86"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:89"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:91"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:82,1"
      Dst: "[java.util.HashMap].clear()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:86,1"
      Dst: "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - "[java.util.HashMap].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:77,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:78,1"
      Dst: "[java.util.HashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].setVariable(java.lang.String,java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jaxen.XPath].getVariableContext()"
    - "[org.jaxen.SimpleVariableContext].setVariableValue(java.lang.String,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMXPath:296"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:299"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMXPath:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:295,1"
      Dst: "[org.jaxen.XPath].getVariableContext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:297,1"
      Dst: "[org.jaxen.SimpleVariableContext].setVariableValue(java.lang.String,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].addNamespace(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMNavigator].includeNamespace(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:315,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMNavigator].includeNamespace(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].includeNamespace(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:98,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:98,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:98,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].getXPath()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:325,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].setXPath(java.lang.String)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jaxen.BaseXPath].<init>(java.lang.String,org.jaxen.Navigator)"
    - "[org.jaxen.XPath].setNamespaceContext(org.jaxen.NamespaceContext)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:338,1"
      Dst: "[org.jaxen.BaseXPath].<init>(java.lang.String,org.jaxen.Navigator)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:339,1"
      Dst: "[org.jaxen.XPath].setNamespaceContext(org.jaxen.NamespaceContext)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:341,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:341,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:341,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:341,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMXPath].toString()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMXPath"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].toString()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:348,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.jdom2.xpath.jaxen.JDOMXPath:348,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].<init>(org.locationtech.jts.operation.overlayng.InputGeometry,org.locationtech.jts.operation.overlayng.OverlayGraph,boolean,int,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.operation.overlayng.InputGeometry"
    - "org.locationtech.jts.operation.overlayng.OverlayGraph"
    - "boolean"
    - "int"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getAreaIndex()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:88,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:76,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:93,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getAreaIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].setStrictMode(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:96"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].getLines()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 7
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].markResultLines()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLines()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:102,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].markResultLines()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:103,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLines()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].markResultLines()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultEither()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultLine()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:123"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isInResultEither()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:117"
        BranchSideFuncs:
        - "isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
        - "getLabel()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:122"
        BranchSideFuncs:
        - "markInResultLine()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:109,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:109,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:116,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultEither()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:119,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].isResultLine(org.locationtech.jts.operation.overlayng.OverlayLabel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundarySingleton()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryCollapse()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isInteriorCollapse()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapseAndNotPartInterior()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineInArea(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryTouch()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:159"
        BranchSideFuncs:
        - "isBoundaryCollapse()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:158"
        BranchSideFuncs:
        - "isInteriorCollapse()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:158"
        BranchSideFuncs:
        - "isInteriorCollapse()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:179"
        BranchSideFuncs:
        - "isLineInArea(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:197"
        BranchSideFuncs:
        - "isBoundaryTouch()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:196"
        BranchSideFuncs:
        - "effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
        - "isResultOfOp(int,int,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:197"
        BranchSideFuncs:
        - "isBoundaryTouch()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:196"
        BranchSideFuncs:
        - "effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
        - "isResultOfOp(int,int,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:196"
        BranchSideFuncs:
        - "effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
        - "isResultOfOp(int,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:143,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundarySingleton()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryCollapse()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:159,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isInteriorCollapse()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:171,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapseAndNotPartInterior()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:180,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLineInArea(int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:189,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isBoundaryTouch()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:197,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:199,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].isResultOfOp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].effectiveLocation(org.locationtech.jts.operation.overlayng.OverlayLabel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:219"
        BranchSideFuncs:
        - "isLine(int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:221"
        BranchSideFuncs:
        - "getLineLocation(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:218,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isCollapse(int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:220,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].isLine(int)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:222,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLineLocation(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLines()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:234"
        BranchSideFuncs:
        - "isInResultLine()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:229"
        BranchSideFuncs:
        - "isVisited()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:228"
        BranchSideFuncs:
        - "isVisited()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:230"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "markVisitedBoth()"
        - "toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:226,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:227,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:227,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:227,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:228,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:229,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:231,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].toLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:237,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:238,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:239,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:239,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:240,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:242,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:243,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesMerged()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesForNodes()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesRings()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:259,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesForNodes()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:260,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesRings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesForNodes()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:264,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:265,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:265,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:265,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:266,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:267,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:275,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:276,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:276,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayGraph"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 209
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 252
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:372"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:373,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:376,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:184,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].nextLineEdgeUnvisited(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:334"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:333"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:320,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:321,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:321,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:323,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:327,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:328,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:331,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:331,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:334,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].nextLineEdgeUnvisited(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:339,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:341,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 107
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:261,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:262,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    functionUses: 2
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:150,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:155,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:173,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].nextLineEdgeUnvisited(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:356"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:356,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:357,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:224,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.CoordinateList:227,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:230,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:289,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:290,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:290,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:290,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:291,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:292,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:294,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:294,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesForNodes()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:264,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:265,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:265,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:265,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:266,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:267,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:275,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:276,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:276,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].addResultLinesRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:292"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:289,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayGraph].getEdges()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:290,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:290,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:290,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:291,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:292,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:294,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:294,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].buildLine(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.operation.overlayng.LineBuilder].nextLineEdgeUnvisited(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:334"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:333"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:320,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:321,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:321,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:323,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:327,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:328,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:331,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:331,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:334,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineBuilder].nextLineEdgeUnvisited(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:339,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:341,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].nextLineEdgeUnvisited(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:356"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:356,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:357,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.LineBuilder].degreeOfLines(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.LineBuilder:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:373"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineBuilder:372"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:373,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    - Src: "org.locationtech.jts.operation.overlayng.LineBuilder:376,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:36,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:37,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:39,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].copy()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:47,1"
      Dst: "[org.locationtech.jts.geom.Envelope].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygon(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 3
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:60"
        BranchSideFuncs:
        - "addPolygon(org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:62"
        BranchSideFuncs:
        - "addCollection(org.locationtech.jts.geom.GeometryCollection)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:59,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygon(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:61,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addCollection(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:65,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:67,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygonRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:72,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:73,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygonRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:75,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:76,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addPolygonRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:88"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "size()"
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:86,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:89,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:90,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:91,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].addSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].intersectsSegment(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:100"
        BranchSideFuncs:
        - "expandToInclude(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:96,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].intersectsSegment(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:97,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer].intersectsSegment(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RobustClipEnvelopeComputer:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree$1].<init>(org.locationtech.jts.index.strtree.SIRtree)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.strtree.SIRtree"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree$1:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.SIRtree$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.SIRtree$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.index.strtree.Interval].getCentre()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].compareDoubles(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.SIRtree$1:36,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jts.index.strtree.SIRtree$1:36,1"
      Dst: "[org.locationtech.jts.index.strtree.Interval].getCentre()"
    - Src: "org.locationtech.jts.index.strtree.SIRtree$1:35,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].compareDoubles(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.Interval].getCentre()"
    functionSourceFile: "org.locationtech.jts.index.strtree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$3].<init>(org.locationtech.jtstest.testbuilder.ValidPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ValidPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$3:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel$3:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearAll()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ValidPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearFlag(javax.swing.JTextField)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:266,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ValidPanel:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].clearMark()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$2].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$2:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$2].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$400(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$2:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$400(org.locationtech.jtstest.testbuilder.CommandPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$400(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].doRun()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].doRun()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].doRun()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Component].repaint()"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].getCommandName()"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].execCommand(java.lang.String,java.lang.String,boolean,boolean)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:291,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:292,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:293,1"
      Dst: "[java.awt.Component].repaint()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:294,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:295,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:299,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].getCommandName()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:299,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].execCommand(java.lang.String,java.lang.String,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].getCommandName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:286,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:287,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.CommandController].execCommand(java.lang.String,java.lang.String,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.CommandController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].expandCommand(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.util.CommandRunner].<init>()"
    - "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.util.CommandRunner].getStderr()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].ui()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].saveCommand(java.lang.String)"
    - "[org.locationtech.jtstest.util.CommandRunner].getStdout()"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].setOutput(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].loadResult(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.CommandController].logCommand(java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.CommandController:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.CommandController:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:35,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].expandCommand(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKT(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].valueWKB(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:50,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:52,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].exec(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:53,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].getStderr()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:58,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].ui()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].saveCommand(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:66,1"
      Dst: "[org.locationtech.jtstest.util.CommandRunner].getStdout()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].limitLength(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].setOutput(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].loadResult(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:72,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:74,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].setError(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.CommandController:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.CommandController].logCommand(java.lang.String,java.lang.String,org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].<init>(org.locationtech.jts.operation.valid.PolygonRing,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.valid.PolygonRing"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingTouch:378,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 383
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 387
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.valid.PolygonRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.PolygonRingTouch].isAtLocation(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.valid.PolygonRingTouch"
    linkageType: null
    functionLinenumber: 391
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.PolygonRingTouch:392,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor:780,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor:781,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor:784,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor:784,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.Vertex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor].getTriangleVertices()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$1)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor:780,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleVertexListVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].clean(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].<init>(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].getResult()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:85,1"
      Dst: "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].<init>(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:86,1"
      Dst: "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].getResult()"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 31
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:109"
        BranchSideFuncs:
        - "getInteriorRingN(int)"
        - "covers(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:108"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:96"
        BranchSideFuncs:
        - "prepare(org.locationtech.jts.geom.Geometry)"
        - "getFactory()"
        - "createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:112"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
        - "getExteriorRing()"
        - "toLinearRingArray(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:98,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:98,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:99,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:101,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:102,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:103,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:104,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:105,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:109,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:114,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:135,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:136,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].<init>(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover].getResult()"
    functionSourceFile: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].covers(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 31
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:109"
        BranchSideFuncs:
        - "getInteriorRingN(int)"
        - "covers(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:108"
        BranchSideFuncs:
        - "getNumInteriorRing()"
    - Branch String: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:96"
        BranchSideFuncs:
        - "prepare(org.locationtech.jts.geom.Geometry)"
        - "getFactory()"
        - "createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Branch String: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:112"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
        - "getExteriorRing()"
        - "toLinearRingArray(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:97,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:98,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:98,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:99,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:101,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:102,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:103,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:104,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:105,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:109,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:114,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jtslab.clean.InvalidHoleRemover$PolygonInvalidHoleRemover:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:32"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:31"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:35"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:32,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:36,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:37,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getArgs()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:55"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:53,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:55,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:56,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:58,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:69,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4:198,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4].geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].model_geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame$4:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].model_geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].model_geometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:304,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateWktPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$4].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$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: "org.locationtech.jtstest.function.TriangleFunctions$4:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$4].map(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$4"
    linkageType: null
    functionLinenumber: 95
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].access$000(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$4:96,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].access$000(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$4:97,1"
      Dst: "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$4:98,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions$4:99,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].access$000(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 22
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:23,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 2
    ICount: 29
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:286,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:40,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].getSegmentSetIntersector()"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.noding.SegmentSetMutualIntersector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:62,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:63,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:47,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:47,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentIntersectionDetector:56,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.noding.SegmentIntersectionDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasIntersection()"
    - "[org.locationtech.jts.noding.SegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:77,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentIntersectionDetector"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.noding.SegmentIntersectionDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasIntersection()"
    - "[org.locationtech.jts.noding.SegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:77,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersectionDetector].hasIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:66,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:48,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:56,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:68,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:86,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[java.text.NumberFormat].getInstance()"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.text.NumberFormat].setMaximumFractionDigits(int)"
    - "[java.text.NumberFormat].setGroupingUsed(boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:95,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:97,1"
      Dst: "[java.text.NumberFormat].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:98,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:102,1"
      Dst: "[java.text.NumberFormat].setMaximumFractionDigits(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:104,1"
      Dst: "[java.text.NumberFormat].setGroupingUsed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:108,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScaleNoUpdate(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:113,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScaleFormat()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.text.NumberFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScale(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScaleToSingleDigitPrecision(double)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScaleToSingleDigitPrecision(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScaleToSingleDigitPrecision(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:142,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:142,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:143,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].snapScaleTo_10_2_5(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:169"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:162,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:162,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:163,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.MathUtil].log10(double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.MathUtil:92,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.math.MathUtil:93,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.math.MathUtil:94,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:180,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:185,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 59
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:575"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:582"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:569,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 23
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:189,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:190,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:194,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:199,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:189,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:190,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:192,1"
      Dst: "[java.awt.geom.AffineTransform].inverseTransform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:194,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:199,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].setLocation(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:212,1"
      Dst: "[java.awt.geom.Point2D].setLocation(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:213,1"
      Dst: "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:225,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update(java.awt.Dimension)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Dimension"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].viewUpdated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.AffineTransform].<init>()"
    - "[java.awt.geom.AffineTransform].translate(double,double)"
    - "[java.awt.geom.AffineTransform].scale(double,double)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:269,1"
      Dst: "[java.awt.geom.AffineTransform].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:270,1"
      Dst: "[java.awt.geom.AffineTransform].translate(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:271,1"
      Dst: "[java.awt.geom.AffineTransform].scale(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:273,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:273,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.AffineTransform"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].updateModelToViewTransform()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].min(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:289,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:290,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:290,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:291,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:292,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:293,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:295,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:295,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:295,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomPan(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:299,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:300,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:299,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:310,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:311,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:314,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:315,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setScale(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:320,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].setOrigin(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getLowerLeftCornerInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Point].<init>(int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:332,1"
      Dst: "[java.awt.Point].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:332,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].computeEnvelopeInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:345,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:346,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:347,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:348,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:353,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:358,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].contains(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.Dimension].getWidth()"
    - "[java.awt.Dimension].getHeight()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:363"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:362"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:364"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:363"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:364"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:365"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:364"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:363,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:363,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:364,1"
      Dst: "[java.awt.Dimension].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:365,1"
      Dst: "[java.awt.Dimension].getHeight()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:380,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:381,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:386,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:387,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getGridPrecisionModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getGridSizeModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:403,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getGridSizeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:404,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getGridSizeModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:409,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:409,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.math.MathUtil].log10(double)"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.Viewport:389"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.Viewport:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:379,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:380,1"
      Dst: "[org.locationtech.jts.math.MathUtil].log10(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:381,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:386,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:387,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getGridSizeModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:409,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].gridMagnitudeModel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:409,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$3].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$3:117,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerPaste(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$3:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$3:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerPaste(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerPaste(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].setGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:274,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:276,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:276,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:278,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:279,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].setGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:280,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:281,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:283,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryFromClipboard()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].readGeometryText(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:224,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].hasGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getEdge()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findEdge(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtNode()"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtVertex()"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSide(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 38
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
        BranchSideFuncs:
        - "next()"
        - "isForward()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:69"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:62"
        BranchSideFuncs:
        - "checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:69"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:69"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getCoordinate()"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:75"
        BranchSideFuncs:
        - "findRightmostEdgeAtNode()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:74"
        BranchSideFuncs:
        - "findRightmostEdgeAtVertex()"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:86"
        BranchSideFuncs:
        - "getSym()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:59,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:59,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:60,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:61,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:63,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:70,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:72,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtNode()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:75,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtVertex()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:82,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSide(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:84,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtNode()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getRightmostEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    functionUses: 1
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:98"
        BranchSideFuncs:
        - "getEdge()"
        - "getSym()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:89,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getNode()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:90,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:91,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getRightmostEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:94,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isForward()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:95,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:96,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:96,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].findRightmostEdgeAtVertex()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 57
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:105"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdge()"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:105"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdge()"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:106,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:107,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:110,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    functionUses: 2
    ICount: 24
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:128"
        BranchSideFuncs:
        - "getEdge()"
        - "getCoordinates()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:129,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:129,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSide(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:147"
        BranchSideFuncs:
        - "getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:144,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:152,1"
      Dst: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].checkForRightmostCoordinate(org.locationtech.jts.geomgraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.RightmostEdgeFinder].getRightmostSideOfSegment(org.locationtech.jts.geomgraph.DirectedEdge,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionUses: 2
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:159,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.buffer.RightmostEdgeFinder:160,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:57,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:58,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:106,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:109,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:110,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:113,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:115,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:116,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:117,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify(org.locationtech.jts.geom.MultiLineString,java.util.BitSet,org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.BitSet"
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].setFreeRingIndices(java.util.BitSet)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].setConstraints(org.locationtech.jts.geom.MultiLineString)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:77,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:78,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].setFreeRingIndices(java.util.BitSet)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:79,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].setConstraints(org.locationtech.jts.geom.MultiLineString)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:80,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].<init>(org.locationtech.jts.geom.MultiLineString,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].setConstraints(org.locationtech.jts.geom.MultiLineString)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].setFreeRingIndices(java.util.BitSet)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.BitSet"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].simplify()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:106,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:109,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].<init>(org.locationtech.jts.coverage.TPVWSimplifier$1)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:110,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].add(java.util.List)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:113,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:115,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:116,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:117,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:119,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier].createEdges(org.locationtech.jts.geom.MultiLineString,java.util.BitSet)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[java.util.BitSet].get(int)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].<init>(org.locationtech.jts.geom.LineString,boolean,double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:123,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:126,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:127,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:128,1"
      Dst: "[java.util.BitSet].get(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:129,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].<init>(org.locationtech.jts.geom.LineString,boolean,double)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier:129,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$2].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$2:231,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$2].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].btnRunTests_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$2:234,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].btnRunTests_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].btnRunTests_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].runTests()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].runTests()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter"
    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: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter].delete(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.LineString,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.LineString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter$DeleteVertexOperation].<init>(org.locationtech.jts.geom.LineString,int)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:27,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:28,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].setCopyUserData(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter$DeleteVertexOperation].<init>(org.locationtech.jts.geom.LineString,int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexDeleter:29,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].isRectangle()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:25,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isRectangle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].overlay(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:43,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersection(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersectionRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:48,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersectionRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:54,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersectionRectangle(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeCovers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeCovers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:72,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:73,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeCovers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:83,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 751
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 10
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:751"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:752"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:753"
        BranchSideFuncs:
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:752"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.geom.Envelope:753"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:754"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:755"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-1"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:756"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:752,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:753,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:754,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:755,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:756,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:62,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:62,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayUtil"
    linkageType: null
    functionLinenumber: 234
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:238,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:241,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:244,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:247,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayUtil:250,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersection(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersectionRectangle(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:48,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersectionRectangle(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:54,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:62,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:62,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].createEmptyResult(int,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].intersectionRectangle(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeCovers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeCovers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:72,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:73,1"
      Dst: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].createEmpty(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.FastOverlayFilter].isEnvelopeCovers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.FastOverlayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:83,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlayng.FastOverlayFilter:83,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].init()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:43"
        BranchSideFuncs:
        - "getPolygonals(org.locationtech.jts.geom.Geometry)"
        - "<init>()"
        - "size()"
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:44,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonalExtracter].getPolygonals(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:45,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:46,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:47,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:48,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:48,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].locate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 9
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].init()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 8
    ICount: 17
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:62"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "locate(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:54,1"
      Dst: "[org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator].init()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:56,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:56,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:57,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.construct.IndexedPointInPolygonsLocator:58,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].locate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$2:169,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$2].mouseClicked(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$2:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPath$XPathString].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.xpath.XPath$XPathString"
    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: "org.jdom2.xpath.XPath$XPathString:439,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.XPath$XPathString].readResolve()"
    functionSourceFile: "org.jdom2.xpath.XPath$XPathString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.XPath].newInstance(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.InvalidObjectException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.XPath$XPathString:456,1"
      Dst: "[org.jdom2.xpath.XPath].newInstance(java.lang.String)"
    - Src: "org.jdom2.xpath.XPath$XPathString:459,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.xpath.XPath$XPathString:459,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.xpath.XPath$XPathString:459,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.jdom2.xpath.XPath$XPathString:459,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.xpath.XPath$XPathString:459,1"
      Dst: "[java.io.InvalidObjectException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.NodeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:33,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 6
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.NodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.relate.RelateNodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:61"
        BranchSideFuncs:
        - "createNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:56,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:58,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:59,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geomgraph.Node)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Node)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:66,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:66,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:68,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:71,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].mergeLabel(org.locationtech.jts.geomgraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:84,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:85,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:86,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:94,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].values()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 101
    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: "org.locationtech.jts.geomgraph.NodeMap:102,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].getBoundaryNodes(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 2
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:113"
        BranchSideFuncs:
        - "getLabel()"
        - "next()"
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:107,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:108,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:108,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:110,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:110,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:111,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.Node].print(java.io.PrintStream)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:118,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:118,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:121,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].print(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    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()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.Node:153,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].<init>(org.locationtech.jts.io.twkb.TWKBHeader)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryType()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].xyPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasBBOX()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasSize()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasIdList()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].isEmpty()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].zPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].mPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryType(org.locationtech.jts.io.twkb.TWKBHeader$GeometryType)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.twkb.TWKBHeader$GeometryType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setXyPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasBBOX(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasSize(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasIdList(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setEmpty(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasZ(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setHasM(boolean)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setZPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setMPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].setGeometryBodySize(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].toString()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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].append(int)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:148,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:148,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:148,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:148,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:148,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:148,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:148,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].geometryBodySize()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].hasExtendedPrecision()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:233,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasZ()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:233,1"
      Dst: "[org.locationtech.jts.io.twkb.TWKBHeader].hasM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].getDimensions()"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:254"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.twkb.TWKBHeader].getPrecision(int)"
    functionSourceFile: "org.locationtech.jts.io.twkb.TWKBHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[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()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.twkb.TWKBHeader:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.twkb.TWKBHeader:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:265,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.io.twkb.TWKBHeader:274,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].setGridSize(double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].setGridSize(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:36,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.lang.Math].floor(double)"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:55,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:55,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:56,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:62,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToMajorGrid(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.lang.Math].floor(double)"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Point2D$Double].<init>(double,double)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:55,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:55,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:56,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:62,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].setGridSize(double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].floor(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:72"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:68,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isFractional()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:75"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].isResolvable(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:85,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].getGridSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer"
    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: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:31,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:32,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer].transform(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.AffineTransformation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].isEdited()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:38,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.AffineTransformation)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:40,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentTransformer$TransformOperation].isEdited()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance"
    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: "org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance:194,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance].distance(org.locationtech.jts.index.strtree.ItemBoundable,org.locationtech.jts.index.strtree.ItemBoundable)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.strtree.ItemBoundable"
    - "org.locationtech.jts.index.strtree.ItemBoundable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    - "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance:198,1"
      Dst: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance:200,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.ItemBoundable].getItem()"
    functionSourceFile: "org.locationtech.jts.index.strtree.ItemBoundable"
    linkageType: null
    functionLinenumber: 34
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.FacetSequence].distance(org.locationtech.jts.operation.distance.FacetSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance.FacetSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.distance.FacetSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.FacetSequence].isPoint()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance.FacetSequence].computeDistancePointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - "[org.locationtech.jts.operation.distance.FacetSequence].computeDistanceLineLine(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.distance.FacetSequence:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.distance.FacetSequence:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:114,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].isPoint()"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:121,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:125,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistancePointLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    - Src: "org.locationtech.jts.operation.distance.FacetSequence:132,1"
      Dst: "[org.locationtech.jts.operation.distance.FacetSequence].computeDistanceLineLine(org.locationtech.jts.operation.distance.FacetSequence,org.locationtech.jts.operation.distance.GeometryLocation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance].<init>(org.locationtech.jts.operation.distance.IndexedFacetDistance$1)"
    functionSourceFile: "org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.distance.IndexedFacetDistance$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance:194,1"
      Dst: "[org.locationtech.jts.operation.distance.IndexedFacetDistance$FacetSequenceDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].<init>(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.Component,javax.swing.border.Border,org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    - "java.io.PrintStream"
    - "java.awt.Component"
    - "javax.swing.border.Border"
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:270,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].dragEnter(java.awt.dnd.DropTargetDragEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.dnd.DropTargetDragEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$100(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    - "[javax.swing.JComponent].getBorder()"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$202(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,javax.swing.border.Border)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.dnd.DropTargetDragEvent].acceptDrag(int)"
    - "[java.awt.dnd.DropTargetDragEvent].rejectDrag()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:291"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:271,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:274,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$100(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:279,1"
      Dst: "[javax.swing.JComponent].getBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:279,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$202(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:281,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:287,1"
      Dst: "[java.awt.dnd.DropTargetDragEvent].acceptDrag(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:292,1"
      Dst: "[java.awt.dnd.DropTargetDragEvent].rejectDrag()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.PrintStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.PrintStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:493,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$100(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    - "java.io.PrintStream"
    - "java.awt.dnd.DropTargetDragEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].isDragOk(java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].isDragOk(java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].isDragOk(java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.io.PrintStream"
    - "java.awt.dnd.DropTargetDragEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.dnd.DropTargetDragEvent].getCurrentDataFlavors()"
    - "[java.awt.datatransfer.DataFlavor].equals(java.awt.datatransfer.DataFlavor)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    - "[java.awt.datatransfer.DataFlavor].toString()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:470"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:470"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:472"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:473"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:485"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:484"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:481"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:484"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:466,1"
      Dst: "[java.awt.dnd.DropTargetDragEvent].getCurrentDataFlavors()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:472,1"
      Dst: "[java.awt.datatransfer.DataFlavor].equals(java.awt.datatransfer.DataFlavor)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:480,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:482,1"
      Dst: "[java.awt.datatransfer.DataFlavor].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$202(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,javax.swing.border.Border)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.border.Border"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    - "javax.swing.border.Border"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].dragOver(java.awt.dnd.DropTargetDragEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.dnd.DropTargetDragEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].drop(java.awt.dnd.DropTargetDropEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.dnd.DropTargetDropEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - "[java.awt.dnd.DropTargetDropEvent].getTransferable()"
    - "[java.awt.datatransfer.Transferable].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - "[java.awt.dnd.DropTargetDropEvent].acceptDrop(int)"
    - "[java.awt.datatransfer.Transferable].getTransferData(java.awt.datatransfer.DataFlavor)"
    - "[java.util.List].iterator()"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener].filesDropped(java.io.File[])"
    - "[java.awt.dnd.DropTargetEvent].getDropTargetContext()"
    - "[java.awt.dnd.DropTargetContext].dropComplete(boolean)"
    - "[java.awt.dnd.DropTargetDropEvent].rejectDrop()"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$200(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 90
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:334"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:330"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:303,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:306,1"
      Dst: "[java.awt.dnd.DropTargetDropEvent].getTransferable()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:309,1"
      Dst: "[java.awt.datatransfer.Transferable].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:313,1"
      Dst: "[java.awt.dnd.DropTargetDropEvent].acceptDrop(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:318,1"
      Dst: "[java.awt.datatransfer.Transferable].getTransferData(java.awt.datatransfer.DataFlavor)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:319,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:322,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:323,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$Listener].filesDropped(java.io.File[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:331,1"
      Dst: "[java.awt.dnd.DropTargetEvent].getDropTargetContext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:331,1"
      Dst: "[java.awt.dnd.DropTargetContext].dropComplete(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:336,1"
      Dst: "[java.awt.dnd.DropTargetDropEvent].rejectDrop()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:354,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$200(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:354,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:341,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.PrintStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$200(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.border.Border"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].dragExit(java.awt.dnd.DropTargetEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.dnd.DropTargetEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$200(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:368"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:367"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$200(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:365,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.PrintStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$200(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.border.Border"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1].dropActionChanged(java.awt.dnd.DropTargetDragEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.dnd.DropTargetDragEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$100(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    - "[java.awt.dnd.DropTargetDragEvent].acceptDrag(int)"
    - "[java.awt.dnd.DropTargetDragEvent].rejectDrag()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:371,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:373,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$100(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:375,1"
      Dst: "[java.awt.dnd.DropTargetDragEvent].acceptDrag(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop$1:379,1"
      Dst: "[java.awt.dnd.DropTargetDragEvent].rejectDrag()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$000(java.io.PrintStream,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.PrintStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].log(java.io.PrintStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].access$100(org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop,java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop"
    - "java.io.PrintStream"
    - "java.awt.dnd.DropTargetDragEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].isDragOk(java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.dnd.FileDrop].isDragOk(java.io.PrintStream,java.awt.dnd.DropTargetDragEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:36,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:42,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].getColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].setSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].setLocation(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].isTooClose(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].setLocation(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].format(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].labelDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float,int)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:72,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:73,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:80,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:86,1"
      Dst: "[java.awt.geom.Point2D].setLocation(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].isTooClose(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:89,1"
      Dst: "[java.awt.geom.Point2D].setLocation(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:97,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].labelDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:103,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:103,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 21
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:353,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].isTooClose(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:113,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:114,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].labelDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:134,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GraphicsUtil].drawStringAlign(java.awt.Graphics2D,java.lang.String,int,int,float,float,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.awt.Graphics2D"
    - "java.lang.String"
    - "int"
    - "int"
    - "float"
    - "float"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[java.awt.geom.RectangularShape].getHeight()"
    - "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:50,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:50,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:50,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:51,1"
      Dst: "[java.awt.geom.RectangularShape].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GraphicsUtil:62,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].isTooClose(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:113,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:114,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle].labelDirection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexLabelStyle:134,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$2].<init>(org.locationtech.jtstest.testbuilder.ResultWKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ResultWKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$2:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ResultWKTPanel$2].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].copyResultToTest()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$2:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.ResultWKTPanel$2:87,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].copyResultToTest()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].copyResultToTest()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:318,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:322,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:322,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:323,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCaseView()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame:324,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestListPanel].populateList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.adapters.JAXPDOMAdapter].<init>()"
    functionSourceFile: "org.jdom2.adapters.JAXPDOMAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.adapters.AbstractDOMAdapter].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.adapters.JAXPDOMAdapter:73,1"
      Dst: "[org.jdom2.adapters.AbstractDOMAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.adapters.JAXPDOMAdapter].createDocument()"
    functionSourceFile: "org.jdom2.adapters.JAXPDOMAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.w3c.dom.Document"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[javax.xml.parsers.DocumentBuilderFactory].newInstance()"
    - "[javax.xml.parsers.DocumentBuilderFactory].newDocumentBuilder()"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - "[javax.xml.parsers.DocumentBuilder].newDocument()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.adapters.JAXPDOMAdapter:94"
      Branch Sides:
      - BranchSide: "org.jdom2.adapters.JAXPDOMAdapter:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.adapters.JAXPDOMAdapter:93,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "org.jdom2.adapters.JAXPDOMAdapter:96,1"
      Dst: "[javax.xml.parsers.DocumentBuilderFactory].newInstance()"
    - Src: "org.jdom2.adapters.JAXPDOMAdapter:97,1"
      Dst: "[javax.xml.parsers.DocumentBuilderFactory].newDocumentBuilder()"
    - Src: "org.jdom2.adapters.JAXPDOMAdapter:98,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    - Src: "org.jdom2.adapters.JAXPDOMAdapter:100,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "org.jdom2.adapters.JAXPDOMAdapter:103,1"
      Dst: "[javax.xml.parsers.DocumentBuilder].newDocument()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].<init>()"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:79,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - "[org.jdom2.Comment].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:88,1"
      Dst: "[org.jdom2.Content].<init>(org.jdom2.Content$CType)"
    - Src: "org.jdom2.Comment:89,1"
      Dst: "[org.jdom2.Comment].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].getValue()"
    functionSourceFile: "org.jdom2.Comment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].getText()"
    functionSourceFile: "org.jdom2.Comment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].setText(java.lang.String)"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.Comment"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkCommentData(java.lang.String)"
    - "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Comment:123"
      Branch Sides:
      - BranchSide: "org.jdom2.Comment:127"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Comment:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Comment:123,1"
      Dst: "[org.jdom2.Verifier].checkCommentData(java.lang.String)"
    - Src: "org.jdom2.Comment:124,1"
      Dst: "[org.jdom2.IllegalDataException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Comment].clone()"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 0
    returnType: "org.jdom2.Comment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].clone()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:133,1"
      Dst: "[org.jdom2.Content].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].detach()"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Comment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].detach()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:138,1"
      Dst: "[org.jdom2.Content].detach()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "org.jdom2.Comment"
    argCount: 1
    argTypes:
    - "org.jdom2.Parent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:143,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Comment].toString()"
    functionSourceFile: "org.jdom2.Comment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.output.XMLOutputter].<init>()"
    - "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Comment)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Comment:158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Comment:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Comment:158,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>()"
    - Src: "org.jdom2.Comment:158,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Comment)"
    - Src: "org.jdom2.Comment:158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].<init>()"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:275,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>(org.jdom2.output.Format,org.jdom2.output.support.XMLOutputProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.Comment)"
    functionSourceFile: "org.jdom2.output.XMLOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.jdom2.Comment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.XMLOutputter:717,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.jdom2.output.XMLOutputter:719,1"
      Dst: "[org.jdom2.output.XMLOutputter].output(org.jdom2.Comment,java.io.Writer)"
    - Src: "org.jdom2.output.XMLOutputter:723,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$2].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$2:75,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$2].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$100(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$2:77,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$100(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$100(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionCopy(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionCopy(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionCopy(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:183,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ActionEvent].getModifiers()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272,1"
      Dst: "[java.awt.event.ActionEvent].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - "[java.lang.Object].toString()"
    - "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.AttributeList].<init>(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:110,1"
      Dst: "[java.util.AbstractList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].uncheckedAddAttribute(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:123,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].add(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 48
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:141"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:147"
        BranchSideFuncs:
        - "getParent()"
        - "getQualifiedName()"
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:146"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:147"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:153"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
      - BranchSide: "org.jdom2.AttributeList:152"
        BranchSideFuncs:
        - "indexOfDuplicate(org.jdom2.Attribute)"
    - Branch String: "org.jdom2.AttributeList:154"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:160"
        BranchSideFuncs:
        - "ensureCapacity(int)"
      - BranchSide: "org.jdom2.AttributeList:159"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
    Callsites:
    - Src: "org.jdom2.AttributeList:141,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:147,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:148,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - Src: "org.jdom2.AttributeList:153,1"
      Dst: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:155,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:156,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getQualifiedName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Element].getName()"
    - "[java.lang.String].equals(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()"
    functionUses: 6
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Element:360"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:364"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "org.jdom2.Element:363"
        BranchSideFuncs:
        - "getPrefix()"
    Callsites:
    - Src: "org.jdom2.Element:360,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:360,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Element:361,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:319,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 633
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Verifier:634,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 650
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Element"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:653"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:657"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:656"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    Callsites:
    - Src: "org.jdom2.Verifier:651,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.Verifier:652,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Verifier:653,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Verifier:657,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Attribute].getNamespace()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 0
    returnType: "org.jdom2.Namespace"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getPrefix()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 289
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 687
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.jdom2.Namespace"
    - "org.jdom2.Element"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - "[org.jdom2.Element].getNamespace()"
    - "[org.jdom2.Element].hasAdditionalNamespaces()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
    - "[org.jdom2.Element].getAdditionalNamespaces()"
    - "[org.jdom2.Element].hasAttributes()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
    - "[org.jdom2.Element].getAttributes()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:690"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:694"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:693"
        BranchSideFuncs:
        - "hasAdditionalNamespaces()"
    - Branch String: "org.jdom2.Verifier:694"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:702"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
        - "getAdditionalNamespaces()"
      - BranchSide: "org.jdom2.Verifier:701"
        BranchSideFuncs:
        - "hasAttributes()"
    - Branch String: "org.jdom2.Verifier:697"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:702"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:701"
        BranchSideFuncs:
        - "hasAttributes()"
    - Branch String: "org.jdom2.Verifier:702"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:709"
        BranchSideFuncs:
        - "getAttributes()"
        - "checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
      - BranchSide: "org.jdom2.Verifier:708"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:704"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:709"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:708"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:688,1"
      Dst: "[org.jdom2.Element].getNamespace()"
    - Src: "org.jdom2.Verifier:688,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Namespace)"
    - Src: "org.jdom2.Verifier:691,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.Verifier:691,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Verifier:691,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.Verifier:694,1"
      Dst: "[org.jdom2.Element].hasAdditionalNamespaces()"
    - Src: "org.jdom2.Verifier:695,1"
      Dst: "[org.jdom2.Element].getAdditionalNamespaces()"
    - Src: "org.jdom2.Verifier:695,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List)"
    - Src: "org.jdom2.Verifier:702,1"
      Dst: "[org.jdom2.Element].hasAttributes()"
    - Src: "org.jdom2.Verifier:703,1"
      Dst: "[org.jdom2.Element].getAttributes()"
    - Src: "org.jdom2.Verifier:703,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Attribute"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Attribute].getQualifiedName()"
    - "[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: 17
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Attribute].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getQualifiedName()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 382
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Attribute].getName()"
    - "[java.lang.String].equals(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()"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Attribute:386"
      Branch Sides:
      - BranchSide: "org.jdom2.Attribute:389"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Attribute:388"
        BranchSideFuncs:
        - "getName()"
    Callsites:
    - Src: "org.jdom2.Attribute:383,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Attribute:386,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Attribute:387,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.Attribute:389,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.Attribute:389,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Attribute:389,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Attribute:389,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Attribute].getName()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 335
    functionDepth: 0
    returnType: "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.Namespace].getURI()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 26
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:423"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:424"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:427"
        BranchSideFuncs:
        - "indexOf(java.lang.String,org.jdom2.Namespace)"
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:428"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs:
        - "getName()"
        - "getNamespaceURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    Callsites:
    - Src: "org.jdom2.AttributeList:425,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.AttributeList:427,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.Namespace].getURI()"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getNamespaceURI()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 418
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getURI()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Attribute:419,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 0
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].ensureCapacity(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 361
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:362"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:366"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:365"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:366"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:371"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "org.jdom2.AttributeList:363,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.jdom2.AttributeList:372,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[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.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 70
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:180"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:181"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:180"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:180"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:185"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:184"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:185"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:190"
        BranchSideFuncs:
        - "getParent()"
        - "getQualifiedName()"
      - BranchSide: "org.jdom2.AttributeList:189"
        BranchSideFuncs:
        - "indexOfDuplicate(org.jdom2.Attribute)"
    - Branch String: "org.jdom2.AttributeList:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:195"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:194"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Branch String: "org.jdom2.AttributeList:196"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:200"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:199"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
        - "ensureCapacity(int)"
    - Branch String: "org.jdom2.AttributeList:203"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:185,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.AttributeList:186,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.AttributeList:186,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:190,1"
      Dst: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:195,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:197,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - Src: "org.jdom2.AttributeList:200,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:202,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    - Src: "org.jdom2.AttributeList:206,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.jdom2.AttributeList].size()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 547
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 87
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getQualifiedName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Element].getName()"
    - "[java.lang.String].equals(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()"
    functionUses: 6
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Element:360"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:364"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "org.jdom2.Element:363"
        BranchSideFuncs:
        - "getPrefix()"
    Callsites:
    - Src: "org.jdom2.Element:360,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:360,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Element:361,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:319,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 633
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Verifier:634,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Attribute"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Attribute].getQualifiedName()"
    - "[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: 17
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Attribute].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 0
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].ensureCapacity(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 361
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:362"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:366"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:365"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:366"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:371"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "org.jdom2.AttributeList:363,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.jdom2.AttributeList:372,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.AttributeList].addAll(java.util.Collection)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 225
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].addAll(int,java.util.Collection)"
    - "[org.jdom2.AttributeList].size()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:226,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:226,1"
      Dst: "[org.jdom2.AttributeList].addAll(int,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].size()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 547
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 87
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].addAll(int,java.util.Collection)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.AttributeList].remove(int)"
    - "[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.NullPointerException].<init>(java.lang.String)"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 64
    EdgeCount: 64
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:246"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:247"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:246"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:246"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:251"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:255"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:254"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:256"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:259"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:258"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:259"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:265"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "ensureCapacity(int)"
        - "add(int,org.jdom2.Attribute)"
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:264"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "ensureCapacity(int)"
        - "size()"
    - Branch String: "org.jdom2.AttributeList:273"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:279"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "add(int,org.jdom2.Attribute)"
      - BranchSide: "org.jdom2.AttributeList:278"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:279"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:287"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:286"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:280"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:283"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.AttributeList:282"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:279"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:279"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:278"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:280"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:283"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.AttributeList:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:252,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:255,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:265,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    - Src: "org.jdom2.AttributeList:273,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.AttributeList:281,1"
      Dst: "[org.jdom2.AttributeList].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[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.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 70
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:180"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:181"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:180"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:180"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:185"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:184"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:185"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:190"
        BranchSideFuncs:
        - "getParent()"
        - "getQualifiedName()"
      - BranchSide: "org.jdom2.AttributeList:189"
        BranchSideFuncs:
        - "indexOfDuplicate(org.jdom2.Attribute)"
    - Branch String: "org.jdom2.AttributeList:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:195"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:194"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Branch String: "org.jdom2.AttributeList:196"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:200"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:199"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
        - "ensureCapacity(int)"
    - Branch String: "org.jdom2.AttributeList:203"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:185,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.AttributeList:186,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.AttributeList:186,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:190,1"
      Dst: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:195,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:197,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - Src: "org.jdom2.AttributeList:200,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:202,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    - Src: "org.jdom2.AttributeList:206,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.jdom2.AttributeList].ensureCapacity(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 361
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:362"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:366"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:365"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:366"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:371"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "org.jdom2.AttributeList:363,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.jdom2.AttributeList:372,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.AttributeList].remove(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 1
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[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.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 35
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:448"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:449"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:448"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:448"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:452"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:451"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
    Callsites:
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:453,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:454,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 0
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].addAll(int,java.util.Collection)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.AttributeList].remove(int)"
    - "[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.NullPointerException].<init>(java.lang.String)"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 64
    EdgeCount: 64
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:246"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:247"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:246"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:246"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:251"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:255"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:254"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:256"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:259"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:258"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:259"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:265"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "ensureCapacity(int)"
        - "add(int,org.jdom2.Attribute)"
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:264"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "ensureCapacity(int)"
        - "size()"
    - Branch String: "org.jdom2.AttributeList:273"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:279"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "add(int,org.jdom2.Attribute)"
      - BranchSide: "org.jdom2.AttributeList:278"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:279"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:287"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:286"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:280"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:283"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.AttributeList:282"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:279"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:279"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:278"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:280"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:283"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.AttributeList:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:252,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:255,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:265,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    - Src: "org.jdom2.AttributeList:273,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.AttributeList:281,1"
      Dst: "[org.jdom2.AttributeList].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[org.jdom2.AttributeList].clear()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 294
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:295"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:302"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:296"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:302"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
      - BranchSide: "org.jdom2.AttributeList:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:298,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 0
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].clearAndSet(java.util.Collection)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[org.jdom2.AttributeList].clear()"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[org.jdom2.AttributeList].addAll(int,java.util.Collection)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:314"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:315"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:314"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:314"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:320"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:319"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:328"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:331"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:330"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:339"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:350"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:344"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:347"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:346"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:339"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:330"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:344"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:347"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:346"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:314,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.jdom2.AttributeList:315,1"
      Dst: "[org.jdom2.AttributeList].clear()"
    - Src: "org.jdom2.AttributeList:329,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:336,1"
      Dst: "[org.jdom2.AttributeList].addAll(int,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 18
  - functionName: "[org.jdom2.AttributeList].clear()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 294
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:295"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:302"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:301"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:296"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:302"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
      - BranchSide: "org.jdom2.AttributeList:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:298,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 0
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].addAll(int,java.util.Collection)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 245
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.AttributeList].remove(int)"
    - "[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.NullPointerException].<init>(java.lang.String)"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 64
    EdgeCount: 64
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:246"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:247"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:246"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:246"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:251"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:255"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:254"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:256"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:259"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:258"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:259"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:265"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "ensureCapacity(int)"
        - "add(int,org.jdom2.Attribute)"
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:264"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "ensureCapacity(int)"
        - "size()"
    - Branch String: "org.jdom2.AttributeList:273"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:279"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "add(int,org.jdom2.Attribute)"
      - BranchSide: "org.jdom2.AttributeList:278"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:279"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:287"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:286"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:280"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:283"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.AttributeList:282"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:279"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:279"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:278"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:280"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:283"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "org.jdom2.AttributeList:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:247,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:252,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:255,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.AttributeList:261,1"
      Dst: "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:265,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    - Src: "org.jdom2.AttributeList:273,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.AttributeList:281,1"
      Dst: "[org.jdom2.AttributeList].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 22
  - functionName: "[org.jdom2.AttributeList].ensureCapacity(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 361
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 3
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:362"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:366"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:365"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:366"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:372"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:371"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "org.jdom2.AttributeList:363,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.jdom2.AttributeList:372,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.jdom2.AttributeList].get(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 384
    functionDepth: 1
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[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)"
    functionUses: 49
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:385"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:386"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:385"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:385"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:390"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:389"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:386,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:386,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:386,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:386,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:386,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:386,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.AttributeList].size()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 547
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 87
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].get(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.Attribute"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:405"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:408"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:404,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.Namespace].getURI()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 26
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:423"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:424"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:427"
        BranchSideFuncs:
        - "indexOf(java.lang.String,org.jdom2.Namespace)"
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:428"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs:
        - "getName()"
        - "getNamespaceURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    Callsites:
    - Src: "org.jdom2.AttributeList:425,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.AttributeList:427,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.Namespace].getURI()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 26
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:423"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:424"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:427"
        BranchSideFuncs:
        - "indexOf(java.lang.String,org.jdom2.Namespace)"
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:428"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs:
        - "getName()"
        - "getNamespaceURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    Callsites:
    - Src: "org.jdom2.AttributeList:425,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.AttributeList:427,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.AttributeList].remove(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 1
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[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.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 35
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:448"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:449"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:448"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:448"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:452"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:451"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
    Callsites:
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:453,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:454,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.AttributeList].remove(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.AttributeList].remove(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:474"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:477"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:476"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:473,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.AttributeList:477,1"
      Dst: "[org.jdom2.AttributeList].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.Namespace].getURI()"
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespaceURI()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 26
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:423"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:424"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:427"
        BranchSideFuncs:
        - "indexOf(java.lang.String,org.jdom2.Namespace)"
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:428"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs:
        - "getName()"
        - "getNamespaceURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    - Branch String: "org.jdom2.AttributeList:430"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:426"
        BranchSideFuncs:
        - "getURI()"
    Callsites:
    - Src: "org.jdom2.AttributeList:425,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.AttributeList:427,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getNamespaceURI()"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.AttributeList:430,1"
      Dst: "[org.jdom2.Attribute].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.AttributeList].remove(int)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 447
    functionDepth: 1
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[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.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 3
    ICount: 35
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:448"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:449"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:448"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:448"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:452"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:451"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
    Callsites:
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:449,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:453,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:454,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.AttributeList].set(int,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 493
    functionDepth: 5
    returnType: "org.jdom2.Attribute"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[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)"
    functionUses: 1
    ICount: 51
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:494"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:495"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:494"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:494"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:498"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:497"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:498"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:504"
        BranchSideFuncs:
        - "getParent()"
        - "getQualifiedName()"
      - BranchSide: "org.jdom2.AttributeList:503"
        BranchSideFuncs:
        - "indexOfDuplicate(org.jdom2.Attribute)"
    - Branch String: "org.jdom2.AttributeList:505"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:509"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:508"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - Branch String: "org.jdom2.AttributeList:505"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:509"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:508"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - Branch String: "org.jdom2.AttributeList:510"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:514"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:513"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
    Callsites:
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:498,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.AttributeList:499,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.AttributeList:499,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:504,1"
      Dst: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:509,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - Src: "org.jdom2.AttributeList:511,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - Src: "org.jdom2.AttributeList:515,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.jdom2.AttributeList].size()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 547
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 87
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].getParent()"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 0
    returnType: "org.jdom2.Element"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Element].getQualifiedName()"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Element].getName()"
    - "[java.lang.String].equals(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()"
    functionUses: 6
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Element:360"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:364"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "org.jdom2.Element:363"
        BranchSideFuncs:
        - "getPrefix()"
    Callsites:
    - Src: "org.jdom2.Element:360,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Element:360,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Element:361,1"
      Dst: "[org.jdom2.Element].getName()"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.Element:364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:319,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: 650
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.jdom2.Attribute"
    - "org.jdom2.Element"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:653"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:657"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:656"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    Callsites:
    - Src: "org.jdom2.Verifier:651,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.Verifier:652,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.Verifier:653,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Verifier:657,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: 80
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.Element"
    - "org.jdom2.Attribute"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Attribute].getQualifiedName()"
    - "[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: 17
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Attribute].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:81,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Attribute"
    linkageType: null
    functionLinenumber: 595
    functionDepth: 0
    returnType: "org.jdom2.Attribute"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getName()"
    - "[org.jdom2.Attribute].getNamespace()"
    - "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getName()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.Attribute].getNamespace()"
    - Src: "org.jdom2.AttributeList:527,1"
      Dst: "[org.jdom2.AttributeList].indexOf(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].iterator()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 537
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList$ALIterator].<init>(org.jdom2.AttributeList,org.jdom2.AttributeList$1)"
    functionUses: 138
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:538,1"
      Dst: "[org.jdom2.AttributeList$ALIterator].<init>(org.jdom2.AttributeList,org.jdom2.AttributeList$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList$ALIterator].<init>(org.jdom2.AttributeList,org.jdom2.AttributeList$1)"
    functionSourceFile: "org.jdom2.AttributeList$ALIterator"
    linkageType: null
    functionLinenumber: 647
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.AttributeList"
    - "org.jdom2.AttributeList$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList$ALIterator].<init>(org.jdom2.AttributeList)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList$ALIterator:648,1"
      Dst: "[org.jdom2.AttributeList$ALIterator].<init>(org.jdom2.AttributeList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList$ALIterator].<init>(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList$ALIterator"
    linkageType: null
    functionLinenumber: 655
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].access$100(org.jdom2.AttributeList)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList$ALIterator:656,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.AttributeList$ALIterator:657,1"
      Dst: "[org.jdom2.AttributeList].access$100(org.jdom2.AttributeList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].access$100(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].size()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 547
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 87
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].isEmpty()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 552
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:553"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:552"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.AttributeList].toString()"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].toString()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:561,1"
      Dst: "[java.util.AbstractCollection].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].binarySearch(int[],int,int,java.util.Comparator)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:578"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:593"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:592"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:581"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:587"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:586"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:582"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:585"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:582"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:585"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:582"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:585"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:587"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:590"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:589"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:580,1"
      Dst: "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.jdom2.AttributeList].sortInPlace(int[])"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(int[],int)"
    - "[java.util.Arrays].sort(int[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:603"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:606"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:607"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:609"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:600,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(int[],int)"
    - Src: "org.jdom2.AttributeList:601,1"
      Dst: "[java.util.Arrays].sort(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.internal.ArrayCopy].copyOf(int[],int)"
    functionSourceFile: "org.jdom2.internal.ArrayCopy"
    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: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.internal.ArrayCopy:126"
      Branch Sides:
      - BranchSide: "org.jdom2.internal.ArrayCopy:125"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.internal.ArrayCopy:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.internal.ArrayCopy:126,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.AttributeList].sort(java.util.Comparator)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].binarySearch(int[],int,int,java.util.Comparator)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[org.jdom2.AttributeList].sortInPlace(int[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:623"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:626"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:625"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:628"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:635"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:634"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:630"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:629,1"
      Dst: "[org.jdom2.AttributeList].binarySearch(int[],int,int,java.util.Comparator)"
    - Src: "org.jdom2.AttributeList:631,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.jdom2.AttributeList:635,1"
      Dst: "[org.jdom2.AttributeList].sortInPlace(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.jdom2.AttributeList].binarySearch(int[],int,int,java.util.Comparator)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:578"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:593"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:592"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:581"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:587"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:586"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:582"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:585"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:582"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:585"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:582"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:585"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:587"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:590"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:589"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:580,1"
      Dst: "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.jdom2.AttributeList].sortInPlace(int[])"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.ArrayCopy].copyOf(int[],int)"
    - "[java.util.Arrays].sort(int[])"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:603"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:606"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:607"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:609"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:600,1"
      Dst: "[org.jdom2.internal.ArrayCopy].copyOf(int[],int)"
    - Src: "org.jdom2.AttributeList:601,1"
      Dst: "[java.util.Arrays].sort(int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.AttributeList].add(int,java.lang.Object)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:75,1"
      Dst: "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].add(int,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[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.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 70
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:180"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:181"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:180"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:180"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:185"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:184"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:185"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:190"
        BranchSideFuncs:
        - "getParent()"
        - "getQualifiedName()"
      - BranchSide: "org.jdom2.AttributeList:189"
        BranchSideFuncs:
        - "indexOfDuplicate(org.jdom2.Attribute)"
    - Branch String: "org.jdom2.AttributeList:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:195"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:194"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Branch String: "org.jdom2.AttributeList:196"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:200"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:199"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
        - "ensureCapacity(int)"
    - Branch String: "org.jdom2.AttributeList:203"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:206"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeList:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:181,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:185,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.AttributeList:186,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.AttributeList:186,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:190,1"
      Dst: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:195,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:197,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - Src: "org.jdom2.AttributeList:200,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:202,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    - Src: "org.jdom2.AttributeList:206,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.jdom2.AttributeList].set(int,java.lang.Object)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].set(int,org.jdom2.Attribute)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:75,1"
      Dst: "[org.jdom2.AttributeList].set(int,org.jdom2.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].set(int,org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 493
    functionDepth: 5
    returnType: "org.jdom2.Attribute"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[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)"
    functionUses: 1
    ICount: 51
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:494"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:495"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:494"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.jdom2.AttributeList:494"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:498"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.jdom2.AttributeList:497"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:498"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:504"
        BranchSideFuncs:
        - "getParent()"
        - "getQualifiedName()"
      - BranchSide: "org.jdom2.AttributeList:503"
        BranchSideFuncs:
        - "indexOfDuplicate(org.jdom2.Attribute)"
    - Branch String: "org.jdom2.AttributeList:505"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:509"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:508"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - Branch String: "org.jdom2.AttributeList:505"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:509"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:508"
        BranchSideFuncs:
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - Branch String: "org.jdom2.AttributeList:510"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:514"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:513"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
    Callsites:
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[org.jdom2.AttributeList].size()"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:495,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:498,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.AttributeList:499,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.AttributeList:499,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:504,1"
      Dst: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:509,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element,int)"
    - Src: "org.jdom2.AttributeList:511,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - Src: "org.jdom2.AttributeList:515,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.jdom2.AttributeList].add(java.lang.Object)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(org.jdom2.Attribute)"
    functionUses: 88
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.AttributeList:75,1"
      Dst: "[org.jdom2.AttributeList].add(org.jdom2.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].add(org.jdom2.Attribute)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.jdom2.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Attribute].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - "[org.jdom2.Element].getQualifiedName()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - "[org.jdom2.AttributeList].ensureCapacity(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 48
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeList:141"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:147"
        BranchSideFuncs:
        - "getParent()"
        - "getQualifiedName()"
        - "<init>(java.lang.String)"
      - BranchSide: "org.jdom2.AttributeList:146"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeList:147"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:153"
        BranchSideFuncs:
        - "<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
        - "checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
      - BranchSide: "org.jdom2.AttributeList:152"
        BranchSideFuncs:
        - "indexOfDuplicate(org.jdom2.Attribute)"
    - Branch String: "org.jdom2.AttributeList:154"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeList:160"
        BranchSideFuncs:
        - "ensureCapacity(int)"
      - BranchSide: "org.jdom2.AttributeList:159"
        BranchSideFuncs:
        - "setParent(org.jdom2.Element)"
    Callsites:
    - Src: "org.jdom2.AttributeList:141,1"
      Dst: "[org.jdom2.Attribute].getParent()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[org.jdom2.Element].getQualifiedName()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.AttributeList:142,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(java.lang.String)"
    - Src: "org.jdom2.AttributeList:147,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Attribute,org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:148,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Attribute,java.lang.String)"
    - Src: "org.jdom2.AttributeList:153,1"
      Dst: "[org.jdom2.AttributeList].indexOfDuplicate(org.jdom2.Attribute)"
    - Src: "org.jdom2.AttributeList:155,1"
      Dst: "[org.jdom2.Attribute].setParent(org.jdom2.Element)"
    - Src: "org.jdom2.AttributeList:156,1"
      Dst: "[org.jdom2.AttributeList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.jdom2.AttributeList].access$100(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].access$200(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].access$300(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].access$400(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "org.jdom2.Attribute[]"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].access$500(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.AttributeList].access$600(org.jdom2.AttributeList)"
    functionSourceFile: "org.jdom2.AttributeList"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.jdom2.AttributeList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].isDebugging()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].toLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].toLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].toLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:95,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].print(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:102,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].print(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:113,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - Src: "org.locationtech.jts.util.Debug:282,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Debug].print(boolean,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:119,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - Src: "org.locationtech.jts.util.Debug:282,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - "[org.locationtech.jts.util.Debug].println()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:126,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Debug:127,1"
      Dst: "[org.locationtech.jts.util.Debug].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].resetTime()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].reset()"
    - "[org.locationtech.jts.util.Stopwatch].getTime()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:132,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].reset()"
    - Src: "org.locationtech.jts.util.Debug:133,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].reset()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:50,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTime()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:70,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].printTime(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].getTime()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    - "[org.locationtech.jts.util.Debug].formatField(java.lang.String,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    - "[org.locationtech.jts.util.Debug].println()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:141,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTime()"
    - Src: "org.locationtech.jts.util.Debug:143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Debug:144,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    - Src: "org.locationtech.jts.util.Debug:144,1"
      Dst: "[org.locationtech.jts.util.Debug].formatField(java.lang.String,int)"
    - Src: "org.locationtech.jts.util.Debug:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:145,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Debug:143,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:147,1"
      Dst: "[org.locationtech.jts.util.Debug].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTime()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:70,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(double)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Stopwatch:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Stopwatch:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Stopwatch:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Stopwatch:83,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].formatField(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.util.Debug].spaces(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:153,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[org.locationtech.jts.util.Debug].spaces(int)"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Debug:156,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].spaces(int)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:165,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:322,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].println()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:314,1"
      Dst: "[java.io.PrintStream].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].formatField(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.util.Debug].spaces(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:153,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[org.locationtech.jts.util.Debug].spaces(int)"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Debug:156,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].spaces(int)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:165,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].equals(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].addWatch(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instanceAddWatch(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:180,1"
      Dst: "[org.locationtech.jts.util.Debug].instanceAddWatch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].instanceAddWatch(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].printWatch()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrintWatch()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:184,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintWatch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].instancePrintWatch()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:264,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - Src: "org.locationtech.jts.util.Debug:282,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Debug].printIfWatch(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrintIfWatch(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:188,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintIfWatch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].instancePrintIfWatch(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:270,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - Src: "org.locationtech.jts.util.Debug:282,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Debug].breakIf(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].doBreak()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:194"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:193,1"
      Dst: "[org.locationtech.jts.util.Debug].doBreak()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].doBreak()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].breakIfEqual(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jts.util.Debug].doBreak()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:198,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Debug:198,1"
      Dst: "[org.locationtech.jts.util.Debug].doBreak()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].doBreak()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].breakIfEqual(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.Debug].doBreak()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:203,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.util.Debug:203,1"
      Dst: "[org.locationtech.jts.util.Debug].doBreak()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].doBreak()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].doBreak()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].hasSegment(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].hasSegment()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:214,1"
      Dst: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.util.Debug:215,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.util.Debug:216,1"
      Dst: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].hasSegment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.Debug$SegmentFindingFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug$SegmentFindingFilter:226,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug$SegmentFindingFilter].hasSegment()"
    functionSourceFile: "org.locationtech.jts.util.Debug$SegmentFindingFilter"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].<init>()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Class].forName(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:251,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.Debug:255,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].instancePrintWatch()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:264,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Debug].instancePrintIfWatch(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:270,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Debug:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:282"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:281"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.util.Debug:276,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    - Src: "org.locationtech.jts.util.Debug:282,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.util.Iterator)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:288,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.util.Debug:289,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.util.Debug:290,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].instancePrintObject(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Object].toString()"
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:297,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.util.Debug:299,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "org.locationtech.jts.util.Debug:301,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:302,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "org.locationtech.jts.util.Debug:305,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jts.util.Debug:305,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    - Src: "org.locationtech.jts.util.Debug:309,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Debug].println()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].println()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:314,1"
      Dst: "[java.io.PrintStream].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].instanceAddWatch(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:322,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.model.GeometryContainer,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "org.locationtech.jtstest.testbuilder.model.GeometryContainer"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].render(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].render(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].render(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:60,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].render(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderCustomFill(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderCustomFill(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:180,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:135"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:128,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderCustomFill(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Palette].customPalette(int,java.awt.Color,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Palette].paletteColor(int,org.locationtech.jtstest.util.HSBPalette,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFillColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getDecoratorStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle,org.locationtech.jtstest.testbuilder.ui.style.StyleList)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:100"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Palette].customPalette(int,java.awt.Color,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Palette].paletteColor(int,org.locationtech.jtstest.util.HSBPalette,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFillColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getDecoratorStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle,org.locationtech.jtstest.testbuilder.ui.style.StyleList)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.Palette].customPalette(int,java.awt.Color,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.Palette"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.util.HSBPalette"
    argCount: 3
    argTypes:
    - "int"
    - "java.awt.Color"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getSaturation(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getBrightness(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getHue(java.awt.Color)"
    - "[org.locationtech.jtstest.util.HSBPalette].<init>(int,float,float,int,float,float,int,float,float)"
    - "[org.locationtech.jtstest.util.HSBPalette].createSpectrum(int,float,float)"
    - "[org.locationtech.jtstest.util.HSBPalette].createSpectrumIncremental(float,float,float)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.Palette:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.Palette:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.Palette:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.Palette:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.Palette:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.Palette:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.Palette:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.Palette:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.Palette:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getSaturation(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getBrightness(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getHue(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:35,1"
      Dst: "[org.locationtech.jtstest.util.HSBPalette].<init>(int,float,float,int,float,float,int,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:41,1"
      Dst: "[org.locationtech.jtstest.util.HSBPalette].createSpectrum(int,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:44,1"
      Dst: "[org.locationtech.jtstest.util.HSBPalette].createSpectrumIncremental(float,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getSaturation(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:68,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getBrightness(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:73,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].getHue(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:63,1"
      Dst: "[java.awt.Color].RGBtoHSB(int,int,int,float[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.HSBPalette].<init>(int,float,float,int,float,float,int,float,float)"
    functionSourceFile: "org.locationtech.jtstest.util.HSBPalette"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "int"
    - "float"
    - "float"
    - "int"
    - "float"
    - "float"
    - "int"
    - "float"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.HSBPalette:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.HSBPalette:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.HSBPalette:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.HSBPalette:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.HSBPalette:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.HSBPalette:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.HSBPalette:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.HSBPalette:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.HSBPalette:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.HSBPalette:71,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.util.HSBPalette].createSpectrum(int,float,float)"
    functionSourceFile: "org.locationtech.jtstest.util.HSBPalette"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.util.HSBPalette"
    argCount: 3
    argTypes:
    - "int"
    - "float"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.HSBPalette].<init>(int,float,float,int,float,float,int,float,float)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.HSBPalette:25,1"
      Dst: "[org.locationtech.jtstest.util.HSBPalette].<init>(int,float,float,int,float,float,int,float,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.HSBPalette].createSpectrumIncremental(float,float,float)"
    functionSourceFile: "org.locationtech.jtstest.util.HSBPalette"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.util.HSBPalette"
    argCount: 3
    argTypes:
    - "float"
    - "float"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.HSBPalette].<init>(int,float,float,int,float,float,int,float,float)"
    - "[org.locationtech.jtstest.util.HSBPalette].setHueInc(float)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.HSBPalette:39,1"
      Dst: "[org.locationtech.jtstest.util.HSBPalette].<init>(int,float,float,int,float,float,int,float,float)"
    - Src: "org.locationtech.jtstest.util.HSBPalette:43,1"
      Dst: "[org.locationtech.jtstest.util.HSBPalette].setHueInc(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.HSBPalette].setHueInc(float)"
    functionSourceFile: "org.locationtech.jtstest.util.HSBPalette"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.Palette].paletteColor(int,org.locationtech.jtstest.util.HSBPalette,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.Palette"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.Color"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jtstest.util.HSBPalette"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getAlpha()"
    - "[org.locationtech.jtstest.util.HSBPalette].color(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:50,1"
      Dst: "[java.awt.Color].getAlpha()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.Palette:51,1"
      Dst: "[org.locationtech.jtstest.util.HSBPalette].color(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.HSBPalette].color(int,int)"
    functionSourceFile: "org.locationtech.jtstest.util.HSBPalette"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[java.awt.Color].getHSBColor(float,float,float)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.HSBPalette:95,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jtstest.util.HSBPalette:97,1"
      Dst: "[java.awt.Color].getHSBColor(float,float,float)"
    - Src: "org.locationtech.jtstest.util.HSBPalette:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.MathUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.MathUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:33"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.MathUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.MathUtil:35"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.MathUtil:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 2
    argTypes:
    - "java.awt.Color"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:78,1"
      Dst: "[java.awt.Color].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFillColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getDecoratorStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle,org.locationtech.jtstest.testbuilder.ui.style.StyleList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    - "org.locationtech.jtstest.testbuilder.ui.style.StyleList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].render(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderCustomFill(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:79,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderCustomFill(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderCustomFill(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Palette].customPalette(int,java.awt.Color,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Palette].paletteColor(int,org.locationtech.jtstest.util.HSBPalette,java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFillColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getDecoratorStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle,org.locationtech.jtstest.testbuilder.ui.style.StyleList)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:100"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:99"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:94,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:100,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getFillType()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Palette].customPalette(int,java.awt.Color,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].copy()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Palette].paletteColor(int,org.locationtech.jtstest.util.HSBPalette,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:113,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setLineColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].setFillColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getDecoratorStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].<init>(org.locationtech.jtstest.testbuilder.ui.style.BasicStyle,org.locationtech.jtstest.testbuilder.ui.style.StyleList)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.style.Style"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:135"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:128,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].intersectsInModel(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].renderGeom(java.awt.Graphics2D,org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.style.Style)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer].cancel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LayerRenderer"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:265,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.EventObject].getSource()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$600(javax.swing.JComboBox)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:267,1"
      Dst: "[java.util.EventObject].getSource()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$600(javax.swing.JComboBox)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:270,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$8:270,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$600(javax.swing.JComboBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "javax.swing.JComboBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getVertexSymbol(javax.swing.JComboBox)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].getVertexSymbol(javax.swing.JComboBox)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertexSymbol(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].<init>()"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:39,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].<init>(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    - "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:48,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].<init>()"
    - Src: "org.locationtech.jts.planargraph.Edge:49,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.DirectedEdge"
    - "org.locationtech.jts.planargraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].setEdge(org.locationtech.jts.planargraph.Edge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].setSym(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionUses: 2
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:59,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].setEdge(org.locationtech.jts.planargraph.Edge)"
    - Src: "org.locationtech.jts.planargraph.Edge:61,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].setSym(org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.planargraph.Edge:63,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.planargraph.Edge:63,1"
      Dst: "[org.locationtech.jts.planargraph.Node].addOutEdge(org.locationtech.jts.planargraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].getDirEdge(int)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].getDirEdge(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.planargraph.DirectedEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.Edge:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.Edge:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.Edge:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.planargraph.Edge:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.Edge:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:82,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].getOppositeNode(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.Edge:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.Edge:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.planargraph.Edge:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.planargraph.Edge:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.Edge:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.Edge:95,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.planargraph.Edge:95,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    functionSourceFile: "org.locationtech.jts.planargraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].remove()"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.Edge].isRemoved()"
    functionSourceFile: "org.locationtech.jts.planargraph.Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.planargraph.Edge:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.planargraph.Edge:115"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator"
    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: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:490,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].compare(org.locationtech.jts.operation.polygonize.EdgeRing,org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelope()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:493,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:493,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelope()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:493,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:492,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.EdgeRing:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].compare(org.locationtech.jts.operation.polygonize.EdgeRing,org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:490,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].compare(org.locationtech.jts.operation.polygonize.EdgeRing,org.locationtech.jts.operation.polygonize.EdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].compare(org.locationtech.jts.operation.polygonize.EdgeRing,org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelope()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:493,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:493,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelope()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:493,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator:492,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    - "[java.lang.Math].rint(double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:168,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:163,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:170,1"
      Dst: "[java.lang.Math].rint(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize()"
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 2
    ICount: 44
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:180"
        BranchSideFuncs:
        - "getCoordinate(int)"
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:181,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:190,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:191,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:192,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter:193,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DistanceToPoint"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    functionUses: 3
    ICount: 27
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:36"
        BranchSideFuncs:
        - "computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:35"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:39"
        BranchSideFuncs:
        - "computeDistance(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:47"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:46"
        BranchSideFuncs:
        - "getCoordinate()"
        - "setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:34,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:37,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:41,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:42,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:43,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:47,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DistanceToPoint"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:53,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:54,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:56,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:59,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].setCoordinates(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.PointPairDistance:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:110"
        BranchSideFuncs:
        - "initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:109"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.distance.PointPairDistance:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:113"
        BranchSideFuncs:
        - "initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.PointPairDistance:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:107,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:110,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:112,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:47,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:47,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DistanceToPoint"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:71,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:71,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:72,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:73,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:85,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isDone()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter"
    linkageType: null
    functionLinenumber: 200
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3].<init>(org.locationtech.jtstest.testbuilder.SpatialFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:239,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearExtended()"
    - "[java.awt.Component].isVisible()"
    - "[javax.swing.JComponent].setVisible(boolean)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:241,1"
      Dst: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearExtended()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:242,1"
      Dst: "[java.awt.Component].isVisible()"
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel$3:242,1"
      Dst: "[javax.swing.JComponent].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.SpatialFunctionPanel].clearExtended()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.SpatialFunctionPanel:351,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].<init>(org.locationtech.jts.operation.buffer.SegmentMCIndex,org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex$1"
    linkageType: null
    functionLinenumber: 47
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.buffer.SegmentMCIndex"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex$1:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].visitItem(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SegmentMCIndex$1"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].select(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SegmentMCIndex$1:51,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].select(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].select(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 219
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:220,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 227
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionUses: 3
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:238"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:253"
        BranchSideFuncs:
        - "computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:235,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:239,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:248,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.geom.LineSegment)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:38,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChainSelectAction:40,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 568
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 4
    ICount: 59
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:571"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:570"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:574"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:574"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:573"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:575"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:577"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:576"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:580"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:579"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:582"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:569,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 23
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4:115,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXMLWKB_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4:118,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXMLWKB_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXMLWKB_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:224,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:48,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:49,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:140,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:142,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:143,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getDescriptionForXml(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:146,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getWKTorWKB(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:147,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:154,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    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: "org.locationtech.jts.geom.CoordinateArrays:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].dimension(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:44,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:44,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].measures(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:61,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:61,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].enforceConsistency(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].max(int,int)"
    - "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:89,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:98,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:105,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:106,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:110,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:112,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.Coordinates].dimension(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:66"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinates].measures(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:86"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionUses: 1
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:46"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.Coordinates:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:46"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinates:39,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:41,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:43,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:45,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].enforceConsistency(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:134,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:138,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:148,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:153,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.Coordinates].create(int,int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinates"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    functionUses: 1
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinates:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:39"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:43"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinates:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:46"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.Coordinates:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinates:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinates:46"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinates:39,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:41,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:43,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYM].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinates:45,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXYZM].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:173"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].ptNotInList(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:192"
        BranchSideFuncs:
        - "indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:189,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].compare(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:210"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:209"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:207,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].increasingDirection(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:258"
        BranchSideFuncs:
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:253,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isEqualReversed(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:270"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:273,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:341,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].copyDeep(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:361"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:360,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 367
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:368,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 378
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:384"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:380"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:380,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].atLeastNCoordinatesOrNothing(int,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:391"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 404
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 7
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:406"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:405"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:405,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:406,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:407,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:425"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:421"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:420"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:421"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:418"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:419,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:421,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 438
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].isValid()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 2
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:440"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:439"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:445"
        BranchSideFuncs:
        - "isValid()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:444"
        BranchSideFuncs:
        - "toCoordinateArray()"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:443"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:442"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:439,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].hasRepeatedOrInvalidPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:440,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:442,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].isValid()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:443,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:445,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].removeNull(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:459"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:458"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:461"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:462"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:467"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:466"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:462"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:483"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].equals(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:495"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:496"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:495"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:496"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:497"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:498"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:497"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:498"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:501"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:500"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:497"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:499,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].equals(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[],java.util.Comparator)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:517"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:516"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:517"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:516"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:517"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:518"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:519"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:518"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:519"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:523"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:522"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:519"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:518"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:520,1"
      Dst: "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].minCoordinate(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:537"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:536"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:534"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:536,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:551,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:552,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 608
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:null"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:610"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:609"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:608"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:610,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:563,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:563,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:173"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:579"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:580"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:586"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:585"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:590"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:593"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:583,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:594,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:563,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:563,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].scroll(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:579"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:580"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:586"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:585"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:590"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:593"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:583,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:594,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 608
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:null"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:610"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:609"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:608"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:610,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].extract(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:635"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:636"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:635"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:637"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:636"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:637"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:638"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:640"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:641"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:643"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:645"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:631,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].envelope(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:657"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:659"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:656,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:658,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].intersection(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:672"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:676"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:675"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:673"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:671"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:670"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:671,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:673,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:674,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.CoordinateArrays:676,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].access$000(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateArrays].isEqualReversed(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:26,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isEqualReversed(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].uniformGridEdgeLength(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:83,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLength(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:95,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLength(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:109,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:110,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLength(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:111,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:112,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:184,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:186,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLength(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:208,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - "[java.util.List].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:264,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:266,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:267,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:270,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:272,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:273,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:275,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:277,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].<init>()"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setSites(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getSubdivision()"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].toTris(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:43,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:44,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].setSites(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:45,1"
      Dst: "[org.locationtech.jts.triangulate.DelaunayTriangulationBuilder].getSubdivision()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:46,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].toTris(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToLongestEdge()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:282,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:282,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:282,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:284,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToLongestEdge()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:287,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToLongestEdge()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:59,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfLongestEdge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:63,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:294"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:297,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:297,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:297,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:299,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:299,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:299,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:446,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    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: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullBorder(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullHoles(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:324,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullBorder(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:326,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullHoles(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullBorder(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].createBorderQueue(java.util.List)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableBorder(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:351"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:331,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].createBorderQueue(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:333,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:334,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:336,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:339,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableBorder(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:341,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:345,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:348,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].createBorderQueue(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.PriorityQueue"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:356,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:357,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:357,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:357,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:358,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:375"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:375"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:375,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:376,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:377,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:537"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:539"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:538"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:539"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:541"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:543"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:542"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToBoundary()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:382,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToBoundary()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:384,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToBoundary()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfBoundary()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:55,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].lengthOfBoundary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:394"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:395,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableBorder(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isConnecting()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:475"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:475,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:480,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isConnecting()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isConnecting()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].adjacent2VertexIndex()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:131,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].adjacent2VertexIndex()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:132,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isInteriorVertex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:495,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:300,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    - Src: "org.locationtech.jts.triangulate.tri.Tri:301,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].remove()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].remove(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:310,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullHoles(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].findCandidateHoles(java.util.List,double)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isRemoved()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].removeHole(java.util.List,org.locationtech.jts.algorithm.hull.HullTri)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:407"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:405"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:399,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].findCandidateHoles(java.util.List,double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:401,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:401,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:401,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:402,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isRemoved()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:403,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:404,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:406,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].removeHole(java.util.List,org.locationtech.jts.algorithm.hull.HullTri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].findCandidateHoles(java.util.List,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].sort(java.util.Comparator)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:430"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:422,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:423,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:423,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:423,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:425,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:427,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:427,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:429,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:433,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.Tri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:577"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:577"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.tri.Tri:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.Tri:577"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.Tri:578,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].isBoundaryTouch(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:210,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isBoundaryTouch(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTri].isRemoved()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTri"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTri:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTri:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTri:75,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].hasAdjacent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].removeHole(java.util.List,org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableHole(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:467"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:466"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:465"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:444,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:445,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:447,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:448,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:450,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:453,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableHole(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:455,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:459,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:462,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableHole(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:489"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:496"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:489,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:497,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundaryPolygon(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].union(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:501"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:504"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:502,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundaryPolygon(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:505,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].union(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundaryPolygon(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundary(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:109,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:110,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:111,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:113,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundary(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:114,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.HullTriangulation].union(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.HullTriangulation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.HullTriangulation:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.HullTriangulation:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:93,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:93,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:94,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].toPolygon(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:95,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.algorithm.hull.HullTriangulation:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.CoverageUnion].union(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLength(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLength(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:109,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:110,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLength(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:111,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:112,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:127,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLengthRatio(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:144,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:145,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLengthRatio(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:146,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:147,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:184,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:186,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLengthRatio(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:230,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - "[java.util.List].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:264,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:266,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:267,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:270,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:272,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:273,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:275,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:277,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].concaveHullByLengthRatio(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLengthRatio(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:144,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:145,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLengthRatio(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:146,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:147,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].alphaShape(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setAlpha(double)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:160,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:161,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setAlpha(double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:162,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:163,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:184,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:186,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setAlpha(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - "[java.util.List].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:264,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:266,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:267,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:270,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:272,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:273,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:275,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:277,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:184,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:186,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLength(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:208,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setMaximumEdgeLengthRatio(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:230,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setAlpha(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setHolesAllowed(boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].getHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - "[java.util.List].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:269"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:264,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:266,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].createDelaunayTriangulation(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:267,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:270,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:272,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:273,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:275,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:277,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToLongestEdge()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:282,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:282,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:282,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:284,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToLongestEdge()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:287,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeTargetEdgeLength(java.util.List,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:294"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:301"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:297,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:297,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:297,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:299,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:299,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].next(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:299,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHull(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullBorder(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullHoles(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:324,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullBorder(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:326,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullHoles(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullBorder(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].createBorderQueue(java.util.List)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableBorder(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:352"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:351"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:331,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].createBorderQueue(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:333,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:334,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:336,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:339,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableBorder(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:341,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:345,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:348,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].createBorderQueue(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.PriorityQueue"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:356,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:357,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:357,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:357,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:358,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:375"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:375"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:375,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:376,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:377,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].setSize(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToBoundary()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:382,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToBoundary()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:384,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].setSizeToCircumradius()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:394"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:395,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].computeHullHoles(java.util.List)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].findCandidateHoles(java.util.List,double)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isRemoved()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].removeHole(java.util.List,org.locationtech.jts.algorithm.hull.HullTri)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:407"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:403"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:405"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:399,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].findCandidateHoles(java.util.List,double)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:401,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:401,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:401,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:402,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isRemoved()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:403,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:404,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:406,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].removeHole(java.util.List,org.locationtech.jts.algorithm.hull.HullTri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].findCandidateHoles(java.util.List,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    - "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].sort(java.util.Comparator)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:433"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:427"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:426"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:428"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:431"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:430"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:422,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:423,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:423,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:423,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:425,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].getSize()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:427,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].isBorder()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:427,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:429,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:433,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].removeHole(java.util.List,org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableHole(org.locationtech.jts.algorithm.hull.HullTri)"
    - "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:467"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:466"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:452"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:454"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:465"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:444,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:445,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:447,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:448,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:450,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isInHull(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:453,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableHole(org.locationtech.jts.algorithm.hull.HullTri)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:455,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getAdjacent(int)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:459,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].remove(java.util.List)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:462,1"
      Dst: "[org.locationtech.jts.algorithm.hull.ConcaveHull].addBorderTri(org.locationtech.jts.algorithm.hull.HullTri,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableBorder(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].isConnecting()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:475"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:475,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:480,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].isConnecting()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].isRemovableHole(org.locationtech.jts.algorithm.hull.HullTri)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.hull.HullTri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:489"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:496"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:496"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:489,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].numAdjacent()"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:497,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTri].hasBoundaryTouch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.hull.ConcaveHull].toGeometry(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.hull.ConcaveHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundaryPolygon(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.hull.HullTriangulation].union(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.hull.ConcaveHull:501"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.hull.ConcaveHull:504"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:502,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].traceBoundaryPolygon(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.algorithm.hull.ConcaveHull:505,1"
      Dst: "[org.locationtech.jts.algorithm.hull.HullTriangulation].union(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].<init>(org.locationtech.jts.geom.OctagonalEnvelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.OctagonalEnvelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:348,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionUses: 4
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:356"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:360"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "expandToInclude(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:355,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:355,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:358,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getY(int)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:137,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:138,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:139,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:140,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 1
    ICount: 57
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:188,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:189,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:191,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:121,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 220
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    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: "org.locationtech.jts.io.gml2.GMLReader:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].read(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLReader:89,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:89,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GMLReader].read(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    - "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLHandler].<init>(org.locationtech.jts.geom.GeometryFactory,org.xml.sax.ErrorHandler)"
    - "[org.xml.sax.InputSource].<init>(java.io.Reader)"
    - "[javax.xml.parsers.SAXParser].parse(org.xml.sax.InputSource,org.xml.sax.helpers.DefaultHandler)"
    - "[org.locationtech.jts.io.gml2.GMLHandler].getGeometry()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GMLReader:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GMLReader:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GMLReader:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GMLReader:104,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:106,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:107,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:109,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newSAXParser()"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:112,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:114,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLHandler].<init>(org.locationtech.jts.geom.GeometryFactory,org.xml.sax.ErrorHandler)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:115,1"
      Dst: "[org.xml.sax.InputSource].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:115,1"
      Dst: "[javax.xml.parsers.SAXParser].parse(org.xml.sax.InputSource,org.xml.sax.helpers.DefaultHandler)"
    - Src: "org.locationtech.jts.io.gml2.GMLReader:117,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLHandler].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    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: "org.locationtech.jtstest.function.NodingFunctions:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].isNodingValid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:43,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:43,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:44,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:79,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:80,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:82,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:108,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].checkInteriorIntersections()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.FastNodingValidator:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:145"
        BranchSideFuncs:
        - "checkInteriorIntersections()"
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:146,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkInteriorIntersections()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].isSegmentNodingValid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.NodingFunctions:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:48,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:49,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:50,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:51,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.noding.NodingIntersectionFinder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:109,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:110,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:111,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:112,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:124,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.noding.NodingIntersectionFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:107,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].findOneNode(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    - "[org.locationtech.jts.noding.FastNodingValidator].getIntersections()"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.NodingFunctions:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:56,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:56,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:57,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:58,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].getIntersections()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:59,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:59,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:59,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:60,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:60,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:79,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:80,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:82,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:108,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].getIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:97,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].findNodes(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.FastNodingValidator].computeIntersections(java.util.Collection)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:67,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:66,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].computeIntersections(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:68,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:69,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:69,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:79,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:80,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:81,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:82,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:83,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:84,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].computeIntersections(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.FastNodingValidator].setFindAllIntersections(boolean)"
    - "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    - "[org.locationtech.jts.noding.FastNodingValidator].getIntersections()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:60,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:61,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].setFindAllIntersections(boolean)"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:62,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:63,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].getIntersections()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].setFindAllIntersections(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].isValid()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:108,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].getIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:97,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:73,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:73,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>(java.util.Collection)"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:73,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:73,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:75,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].toCoordinateArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].findInteriorNodes(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionsFinder(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:82,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:83,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionsFinder(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:84,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:85,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersections()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:86,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:87,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].dedup(java.util.List)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].intersectionCount(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].createIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:92,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:93,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].createIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:94,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:95,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].createIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.noding.NodingIntersectionFinder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:94,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:95,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:96,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:124,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.noding.NodingIntersectionFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:107,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].interiorIntersectionCount(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:100,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:101,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:102,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:103,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].createInteriorIntersectionCounter(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.noding.NodingIntersectionFinder"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:109,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:110,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setInteriorIntersectionsOnly(boolean)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:111,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setFindAllIntersections(boolean)"
    - Src: "org.locationtech.jts.noding.NodingIntersectionFinder:112,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].setKeepIntersections(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.noding.NodingIntersectionFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:107,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingIntersectionFinder].count()"
    functionSourceFile: "org.locationtech.jts.noding.NodingIntersectionFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].processNodes(org.locationtech.jts.geom.Geometry,org.locationtech.jts.noding.NodingIntersectionFinder)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.noding.NodingIntersectionFinder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:107,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractBasicSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:108,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].MCIndexNodingWithPrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:117,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:118,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:120,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:121,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:123,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:123,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:124,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:125,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:125,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:125,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.NodingFunctions:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:158,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:56,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:99,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].MCIndexNoding(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:132,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:133,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:133,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:133,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:134,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:135,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:135,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:135,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.NodingFunctions:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:158,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:56,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:99,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].snappingNoder(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:145,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:146,1"
      Dst: "[org.locationtech.jts.noding.snap.SnappingNoder].<init>(double)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:147,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:148,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:149,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:149,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.NodingFunctions:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:158,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].snapRoundingNoder(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:170,1"
      Dst: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:171,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:172,1"
      Dst: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:173,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:174,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:175,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:175,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.NodingFunctions].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.NodingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.NodingFunctions:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.NodingFunctions:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.NodingFunctions:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.NodingFunctions:158,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.SnapRoundingNoder"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.SnapRoundingNoder:73,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].toGeometry(java.util.Collection,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:99,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:101,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:102,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:103,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    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: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointsInGrid(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:30,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:30,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:31,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:31,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:32,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:33,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:53,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:89,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:95,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:97,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:109,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:110,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointsInGridCircles(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setConstrainedToCircle(boolean)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:37,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:37,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:38,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:39,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:40,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setConstrainedToCircle(boolean)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:41,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:53,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setConstrainedToCircle(boolean)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:89,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:95,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:97,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:109,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:110,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointsInGridWithGutter(org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setGutterFraction(double)"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:47,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:47,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:48,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:48,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:49,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:50,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setGutterFraction(double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:51,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:53,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].setGutterFraction(double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:112"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:89,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:94,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:95,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:97,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:109,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:110,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsInGridBuilder].randomPointInCell(double,double,double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsInGridBuilder:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPoints(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].getGeometry()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:55,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:55,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:56,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:56,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:57,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:58,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:55,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].createRandomCoord(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].isInExtent(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:78,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:78,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].createRandomCoord(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:79,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].isInExtent(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].createRandomCoord(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].createCoord(double,double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:102,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:102,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:102,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:103,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:103,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:104,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].createCoord(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].createCoord(double,double)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:95,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:96,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:96,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].isInExtent(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:89,1"
      Dst: "[org.locationtech.jts.algorithm.locate.PointOnGeometryLocator].locate(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:90,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:90,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointsInPolygon(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].setExtent(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].getGeometry()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:62,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:62,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:63,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].setExtent(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:64,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:65,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:55,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].setExtent(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:67,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:69,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:69,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].setExtent(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:70,1"
      Dst: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.random.RandomPointsBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.random.RandomPointsBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].createRandomCoord(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.shape.random.RandomPointsBuilder].isInExtent(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.random.RandomPointsBuilder:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.random.RandomPointsBuilder:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:78,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getExtent()"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:78,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].createRandomCoord(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:79,1"
      Dst: "[org.locationtech.jts.shape.random.RandomPointsBuilder].isInExtent(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.random.RandomPointsBuilder:83,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointsInTriangle(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointInTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:69,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:75,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:78,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointInTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:78,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:80,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointInTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:85,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:98,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPointInTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:85,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:98,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomRadialPoints(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].min(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Math].random()"
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:102,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:103,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:104,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:105,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:106,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:109,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:111,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:114,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:120,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:121,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:122,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:122,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:122,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:124,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPoints(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPointsWithBases(org.locationtech.jts.geom.Geometry,int,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:130,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPointsWithBases(org.locationtech.jts.geom.Geometry,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPointsWithBases(org.locationtech.jts.geom.Geometry,int,int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:146,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:148,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:153,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:153,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:154,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:155,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].floor(double)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:170,1"
      Dst: "[java.lang.Math].floor(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:412,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPoints57(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPointsWithBases(org.locationtech.jts.geom.Geometry,int,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:136,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPointsWithBases(org.locationtech.jts.geom.Geometry,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPointsWithBases(org.locationtech.jts.geom.Geometry,int,int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:146,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:148,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:153,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:153,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:154,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:155,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonPointsWithBases(org.locationtech.jts.geom.Geometry,int,int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:146,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:148,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:149,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:153,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:153,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:154,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:155,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].haltonOrdinate(int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].floor(double)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:170,1"
      Dst: "[java.lang.Math].floor(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].robertsPoints(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].quasirandom(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:193,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:195,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:196,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:204,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].quasirandom(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:206,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:207,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:208,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:209,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:213,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:213,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].quasirandom(double,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].floor(double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:219,1"
      Dst: "[java.lang.Math].floor(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 677
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:678,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:412"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:413,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:412,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].quasirandom(double,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].floor(double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:218"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:219,1"
      Dst: "[java.lang.Math].floor(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomSegments(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:223,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:224,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:225,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:226,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:228,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:231,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:231,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:232,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:235,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:235,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:238,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomSegmentsInGrid(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:261"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:242,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:243,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:245,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:247,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:248,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:250,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:254,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:254,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:255,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:258,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:258,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:258,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:262,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomSegmentsRectilinear(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:289"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:288"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:266,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:267,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:268,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:269,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:271,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:274,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:274,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:275,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:286,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:286,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:286,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:289,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomLineString(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPtInRectangleAround(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:293,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:294,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:295,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:296,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:301,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:303,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:303,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPtInRectangleAround(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:305,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPtInRectangleAround(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:352,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:354,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomRectilinearWalk(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPtInRectangleAround(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:317"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:337"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:323"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:322"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:329"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:309,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:310,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:311,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:312,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:320,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:320,1"
      Dst: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPtInRectangleAround(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:323,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:334,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:338,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPtInRectangleAround(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:352,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:354,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomQuadrant(int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:346"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:345"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:346"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:344,1"
      Dst: "[java.lang.Math].random()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.CreateRandomShapeFunctions].randomPtInRectangleAround(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateRandomShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].random()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:352,1"
      Dst: "[java.lang.Math].random()"
    - Src: "org.locationtech.jtstest.function.CreateRandomShapeFunctions:354,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].extract(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.union.InputExtracter"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - "[org.locationtech.jts.operation.union.InputExtracter].add(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:48,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:49,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].add(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].extract(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.union.InputExtracter"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:60,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:61,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    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: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:66,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].isEmpty()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:85,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].getDimension()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].getFactory()"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].getExtract(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    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()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:122,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:127,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:127,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:127,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:128,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: 140
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.operation.union.InputExtracter].recordDimension(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.MultiPolygon].getGeometryType()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryType()"
    - "[org.locationtech.jts.geom.Polygon].getGeometryType()"
    - "[org.locationtech.jts.geom.MultiLineString].getGeometryType()"
    - "[org.locationtech.jts.geom.Point].getGeometryType()"
    - "[org.locationtech.jts.geom.LinearRing].getGeometryType()"
    - "[org.locationtech.jts.geom.MultiPoint].getGeometryType()"
    - "[org.locationtech.jts.geom.LineString].getGeometryType()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 36
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:148"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:164"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:163"
        BranchSideFuncs:
        - "getGeometryType()"
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.InputExtracter:141,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:141,1"
      Dst: "[org.locationtech.jts.operation.union.InputExtracter].recordDimension(int)"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:153,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:164,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:164,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:164,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:164,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.InputExtracter:164,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].recordDimension(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:169"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 12
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:96"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Assert:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Assert:98,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.InputExtracter].recordDimension(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.InputExtracter"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.InputExtracter:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.InputExtracter:169"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.File,org.locationtech.jts.io.WKBReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "org.locationtech.jts.io.WKBReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.lang.String,org.locationtech.jts.io.WKBReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.io.WKBReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.File,org.locationtech.jts.io.WKBReader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:66,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:66,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.File,org.locationtech.jts.io.WKBReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.io.WKBReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].setLimit(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].setOffset(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileReader].<init>(java.io.File)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    - "[java.io.BufferedReader].close()"
    - "[java.io.Reader].close()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:115,1"
      Dst: "[java.io.FileReader].<init>(java.io.File)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:119,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:121,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:123,1"
      Dst: "[java.io.BufferedReader].close()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:126,1"
      Dst: "[java.io.Reader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.io.WKBHexFileReader].isAtEndOfFile(java.io.BufferedReader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].isAtLimit(java.util.List)"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jts.io.WKBReader].hexToBytes(java.lang.String)"
    - "[org.locationtech.jts.io.WKBReader].read(byte[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:132,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:133,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].isAtEndOfFile(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:133,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].isAtLimit(java.util.List)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:134,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:134,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:135,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:137,1"
      Dst: "[org.locationtech.jts.io.WKBReader].hexToBytes(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:137,1"
      Dst: "[org.locationtech.jts.io.WKBReader].read(byte[])"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:139,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].isAtLimit(java.util.List)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:147"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:148,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].isAtEndOfFile(java.io.BufferedReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.BufferedReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].mark(int)"
    - "[java.io.StreamTokenizer].<init>(java.io.Reader)"
    - "[java.io.StreamTokenizer].nextToken()"
    - "[java.io.BufferedReader].reset()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:160,1"
      Dst: "[java.io.BufferedReader].mark(int)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:162,1"
      Dst: "[java.io.StreamTokenizer].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:163,1"
      Dst: "[java.io.StreamTokenizer].nextToken()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:168,1"
      Dst: "[java.io.BufferedReader].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    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: "org.locationtech.jtstest.function.SimplificationFunctions:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].simplifyDP(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SimplificationFunctions:23,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].getResultGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:59,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:60,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.simplify.DouglasPeuckerSimplifier:61,1"
      Dst: "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].simplifyTP(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SimplificationFunctions:26,1"
      Dst: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].getResultGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:71,1"
      Dst: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:72,1"
      Dst: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:73,1"
      Dst: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.simplify.TaggedLinesSimplifier].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:81,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:77,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLinesSimplifier].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLinesSimplifier].<init>()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLinesSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.simplify.LineSegmentIndex].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:26,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].<init>()"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:31,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.Quadtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.Quadtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.quadtree.Root].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.Quadtree:103,1"
      Dst: "[org.locationtech.jts.index.quadtree.Root].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.simplify.TaggedLinesSimplifier].setDistanceTolerance(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:96,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:97,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLinesSimplifier].setDistanceTolerance(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.TaggedLinesSimplifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLinesSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier].getResultGeometry()"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[java.util.HashMap].<init>()"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].<init>(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.Map].values()"
    - "[org.locationtech.jts.simplify.TaggedLinesSimplifier].simplify(java.util.Collection)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].<init>(java.util.Map)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:103,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:105,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:106,1"
      Dst: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].<init>(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:106,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:107,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:107,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLinesSimplifier].simplify(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:108,1"
      Dst: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].<init>(java.util.Map)"
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier:108,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].<init>(org.locationtech.jts.simplify.TopologyPreservingSimplifier)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.TopologyPreservingSimplifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter:150,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLinesSimplifier].simplify(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLinesSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].<init>(java.util.Collection)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.simplify.TaggedLineString)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].<init>(org.locationtech.jts.simplify.LineSegmentIndex,org.locationtech.jts.simplify.LineSegmentIndex,org.locationtech.jts.simplify.ComponentJumpChecker)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplify(org.locationtech.jts.simplify.TaggedLineString,double)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLinesSimplifier:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLinesSimplifier:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLinesSimplifier:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLinesSimplifier:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLinesSimplifier:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLinesSimplifier:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:53,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:55,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:55,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:56,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:56,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.simplify.TaggedLineString)"
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:59,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].<init>(org.locationtech.jts.simplify.LineSegmentIndex,org.locationtech.jts.simplify.LineSegmentIndex,org.locationtech.jts.simplify.ComponentJumpChecker)"
    - Src: "org.locationtech.jts.simplify.TaggedLinesSimplifier:61,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplify(org.locationtech.jts.simplify.TaggedLineString,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.simplify.TaggedLineString)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getSegments()"
    - "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.LineSegmentIndex:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.LineSegmentIndex:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:38,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getSegments()"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:41,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].<init>(org.locationtech.jts.simplify.LineSegmentIndex,org.locationtech.jts.simplify.LineSegmentIndex,org.locationtech.jts.simplify.ComponentJumpChecker)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.simplify.LineSegmentIndex"
    - "org.locationtech.jts.simplify.LineSegmentIndex"
    - "org.locationtech.jts.simplify.ComponentJumpChecker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:35,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplify(org.locationtech.jts.simplify.TaggedLineString,double)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifySection(int,int,int,double)"
    - "[org.locationtech.jts.simplify.TaggedLineString].isRing()"
    - "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifyRingEndpoint(double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:61,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:62,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifySection(int,int,int,double)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:64,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].isRing()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:64,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:65,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifyRingEndpoint(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:52,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifySection(int,int,int,double)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getSegment(int)"
    - "[org.locationtech.jts.simplify.TaggedLineString].addToResult(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineString].getResultSize()"
    - "[org.locationtech.jts.simplify.TaggedLineString].getMinimumSize()"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].findFurthestPoint(org.locationtech.jts.geom.Coordinate[],int,int,double[])"
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isTopologyValid(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].flatten(int,int)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifySection(int,int,int,double)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:74,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getSegment(int)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:75,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].addToResult(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:89,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getResultSize()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:89,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getMinimumSize()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:96,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].findFurthestPoint(org.locationtech.jts.geom.Coordinate[],int,int,double[])"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:105,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:108,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isTopologyValid(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:112,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].flatten(int,int)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:116,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifySection(int,int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getSegment(int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.simplify.TaggedLineSegment"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].addToResult(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:111,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getResultSize()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:69,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getMinimumSize()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].findFurthestPoint(org.locationtech.jts.geom.Coordinate[],int,int,double[])"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:143,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:150,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isTopologyValid(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasOutputIntersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJump(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:200,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasOutputIntersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:202,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:204,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJump(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasOutputIntersection(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LineSegmentIndex].query(org.locationtech.jts.geom.LineSegment)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInvalidIntersection(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:235"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:230,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].query(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:231,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:231,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:232,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:233,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInvalidIntersection(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].query(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.LineSegmentVisitor].<init>(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.simplify.LineSegmentVisitor].getItems()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:57,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:59,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentVisitor].<init>(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:60,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:61,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentVisitor].getItems()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInvalidIntersection(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].equalsTopo(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:303,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].equalsTopo(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:305,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:306,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].equalsTopo(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:727"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:726"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:726"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:725"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:724"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:727"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:724"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:727"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:724"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:726,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LineSegmentIndex].query(org.locationtech.jts.geom.LineSegment)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInvalidIntersection(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isInLineSection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.simplify.TaggedLineSegment)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:263"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:261"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:249,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].query(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:250,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:250,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:251,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:252,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInvalidIntersection(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:258,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isInLineSection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.simplify.TaggedLineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isInLineSection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.simplify.TaggedLineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    - "org.locationtech.jts.simplify.TaggedLineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineSegment].getParent()"
    - "[org.locationtech.jts.simplify.TaggedLineString].getParent()"
    - "[org.locationtech.jts.simplify.TaggedLineSegment].getIndex()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:286"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:285"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:295"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:294"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:284,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineSegment].getParent()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:284,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getParent()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:286,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineSegment].getIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.simplify.TaggedLineSegment].getParent()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getParent()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineSegment].getIndex()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineSegment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJump(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].computeEnvelope(org.locationtech.jts.simplify.TaggedLineString,int,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.simplify.TaggedLineString].getComponentPoint()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJumpAtComponent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:49,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].computeEnvelope(org.locationtech.jts.simplify.TaggedLineString,int,int)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:50,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:50,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:50,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:55,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getComponentPoint()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:56,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:57,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJumpAtComponent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].computeEnvelope(org.locationtech.jts.simplify.TaggedLineString,int,int)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.simplify.TaggedLineString].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:139,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:141,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:141,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:56,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getComponentPoint()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:64,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getParentCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 617
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:618,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJumpAtComponent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.TaggedLineString,int,int)"
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:95,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.TaggedLineString,int,int)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:96,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.simplify.TaggedLineString,int,int)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.TaggedLineString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:122,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:124,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getCoordinate(int)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:124,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:126,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 98
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:160"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:161,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 25
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:109,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:110,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:111,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].flatten(int,int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].remove(org.locationtech.jts.simplify.TaggedLineString,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:176,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:178,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:179,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].remove(org.locationtech.jts.simplify.TaggedLineString,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].add(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:47,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:47,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].remove(org.locationtech.jts.simplify.TaggedLineString,int,int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getSegment(int)"
    - "[org.locationtech.jts.simplify.LineSegmentIndex].remove(org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:320,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getSegment(int)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:321,1"
      Dst: "[org.locationtech.jts.simplify.LineSegmentIndex].remove(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.LineSegmentIndex].remove(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.LineSegmentIndex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:52,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.LineSegmentIndex:52,1"
      Dst: "[org.locationtech.jts.index.quadtree.Quadtree].remove(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].isRing()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].isRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:173"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateArrays:174,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].simplifyRingEndpoint(double)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineString].getResultSize()"
    - "[org.locationtech.jts.simplify.TaggedLineString].getMinimumSize()"
    - "[org.locationtech.jts.simplify.TaggedLineString].getResultSegment(int)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isTopologyValid(org.locationtech.jts.simplify.TaggedLineString,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineString].removeRingEndpoint()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:127,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getResultSize()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:127,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getMinimumSize()"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:128,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getResultSegment(int)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:131,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:134,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:135,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isTopologyValid(org.locationtech.jts.simplify.TaggedLineString,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:136,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].removeRingEndpoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].getResultSegment(int)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineString:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineString:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:84,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:86,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isTopologyValid(org.locationtech.jts.simplify.TaggedLineString,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isCollinear(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasOutputIntersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJump(org.locationtech.jts.simplify.TaggedLineString,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:213,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isCollinear(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:215,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasOutputIntersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:217,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:219,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJump(org.locationtech.jts.simplify.TaggedLineString,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].isCollinear(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:225,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:182,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineStringSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineStringSimplifier:242,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineStringSimplifier].hasInputIntersection(org.locationtech.jts.simplify.TaggedLineString,int,int,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJump(org.locationtech.jts.simplify.TaggedLineString,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.simplify.TaggedLineString"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].computeEnvelope(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.simplify.TaggedLineString].getComponentPoint()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJumpAtComponent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:90"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:78,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].computeEnvelope(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:79,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:79,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:79,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:84,1"
      Dst: "[org.locationtech.jts.simplify.TaggedLineString].getComponentPoint()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:85,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:86,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJumpAtComponent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].computeEnvelope(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:130,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:131,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].hasJumpAtComponent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.simplify.ComponentJumpChecker:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.simplify.ComponentJumpChecker:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:102,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:103,1"
      Dst: "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.simplify.ComponentJumpChecker].crossingCount(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.simplify.ComponentJumpChecker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:115,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:116,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.simplify.ComponentJumpChecker:118,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TaggedLineString].removeRingEndpoint()"
    functionSourceFile: "org.locationtech.jts.simplify.TaggedLineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[java.util.List].remove(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TaggedLineString:138,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:139,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.simplify.TaggedLineString:142,1"
      Dst: "[java.util.List].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer].<init>(java.util.Map)"
    functionSourceFile: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringTransformer:117,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - "[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: 55
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:120"
        BranchSideFuncs:
        - "transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:122"
        BranchSideFuncs:
        - "transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:124"
        BranchSideFuncs:
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:126"
        BranchSideFuncs:
        - "transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:128"
        BranchSideFuncs:
        - "transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:130"
        BranchSideFuncs:
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:132"
        BranchSideFuncs:
        - "transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:135"
        BranchSideFuncs:
        - "transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:119,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:123,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:127,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:129,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:131,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:133,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].simplifyVW(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SimplificationFunctions:31,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.VWSimplifier].simplify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.simplify.VWSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.VWSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.simplify.VWSimplifier].getResultGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.VWSimplifier:61,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:62,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.simplify.VWSimplifier:63,1"
      Dst: "[org.locationtech.jts.simplify.VWSimplifier].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].outerPolygonHullByVertexFrac(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].hull(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SimplificationFunctions:36,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hull(org.locationtech.jts.geom.Geometry,boolean,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hull(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:80,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:81,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:81,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:82,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].outerPolygonHullByAreaDelta(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].hullByAreaDelta(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SimplificationFunctions:42,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hullByAreaDelta(org.locationtech.jts.geom.Geometry,boolean,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hullByAreaDelta(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:99,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:100,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:100,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:101,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].innerPolygonHullByVertexFrac(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].hull(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SimplificationFunctions:48,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hull(org.locationtech.jts.geom.Geometry,boolean,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hull(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:80,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:81,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:81,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setVertexNumFraction(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:82,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SimplificationFunctions].innerPolygonHullByAreaDelta(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.SimplificationFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].hullByAreaDelta(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SimplificationFunctions:54,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hullByAreaDelta(org.locationtech.jts.geom.Geometry,boolean,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.PolygonHullSimplifier].hullByAreaDelta(org.locationtech.jts.geom.Geometry,boolean,double)"
    functionSourceFile: "org.locationtech.jts.simplify.PolygonHullSimplifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.lang.Math].abs(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    - "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:99,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:100,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:100,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].setAreaDeltaRatio(double)"
    - Src: "org.locationtech.jts.simplify.PolygonHullSimplifier:101,1"
      Dst: "[org.locationtech.jts.simplify.PolygonHullSimplifier].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].createCmdLine()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.command.CommandLine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.command.CommandLine].<init>(char)"
    - "[org.locationtech.jtstest.command.OptionSpec].<init>(java.lang.String,int)"
    - "[org.locationtech.jtstest.command.CommandLine].addOptionSpec(org.locationtech.jtstest.command.OptionSpec)"
    functionUses: 0
    ICount: 74
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:107,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].<init>(char)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:108,1"
      Dst: "[org.locationtech.jtstest.command.OptionSpec].<init>(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:108,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].addOptionSpec(org.locationtech.jtstest.command.OptionSpec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].printHelp(boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.io.PrintStream].println()"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].printFunctions()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:197,1"
      Dst: "[java.io.PrintStream].println()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:199,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].printFunctions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].printFunctions()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].functionDesc(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:205,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:207,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:208,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:208,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:208,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:210,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].functionDesc(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.function.DoubleKeyMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    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: "org.locationtech.jtstest.function.DoubleKeyMap:49,1"
      Dst: "[java.util.Map].keySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].values()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DoubleKeyMap:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:60,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:62,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].functionDesc(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getSignature()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:220,1"
      Dst: "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getSignature()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].printFunctions()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].functionDesc(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:205,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].getCategorizedGeometryFunctions()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:207,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].keySet()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:208,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:208,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:208,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:210,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].values(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].functionDesc(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:212,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].functionDesc(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getSignature()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:220,1"
      Dst: "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getSignature()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].<init>()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].createTestBuilderRegistry()"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].createCmdLine()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:232,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:224,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].createTestBuilderRegistry()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:225,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].createCmdLine()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:233,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].captureOutput()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].captureOutput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:237,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].captureOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].captureOutput()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.CommandOutput].<init>(boolean)"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].<init>(org.locationtech.jtstest.cmd.CommandOutput)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:143,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].<init>(boolean)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:144,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].<init>(org.locationtech.jtstest.cmd.CommandOutput)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].<init>(boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:16,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].<init>(org.locationtech.jtstest.cmd.CommandOutput)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.cmd.CommandOutput"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].captureResult()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].captureResult()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:241,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].captureResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].captureResult()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].getResultGeometry()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].getResultGeometry()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:245,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].getResultGeometry()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].replaceStdIn(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].replaceStdIn(java.io.InputStream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:249,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].replaceStdIn(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].replaceStdIn(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].getOutput()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].getOutput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:253,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].getOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].getOutput()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.CommandOutput].getOutput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:160,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].getOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].getOutput()"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:56,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].getOutputLines()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].getOutput()"
    - "[java.lang.String].split(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:257,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].getOutput()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:258,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].getOutput()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.CommandOutput].getOutput()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:160,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].getOutput()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].isFilename(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].isWKT(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:263"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:263"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:263,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:264,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].isWKT(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isHex(java.lang.String,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:42,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isHex(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].isWKT(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.String].endsWith(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:276,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:278,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:278,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].isWKT(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.String].endsWith(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:276,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:278,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:278,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].execute(org.locationtech.jtstest.cmd.JTSOpRunner$OpParams)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].printHelp(boolean)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].setRegistry(org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].execute(org.locationtech.jtstest.cmd.JTSOpRunner$OpParams)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:284,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].printHelp(boolean)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:287,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].setRegistry(org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:288,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].execute(org.locationtech.jtstest.cmd.JTSOpRunner$OpParams)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].printHelp(boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.io.PrintStream].println()"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].printFunctions()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:192,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:197,1"
      Dst: "[java.io.PrintStream].println()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:199,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].printFunctions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].setRegistry(org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].execute(org.locationtech.jtstest.cmd.JTSOpRunner$OpParams)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].createGeometryFactory(int)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].loadGeometry()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].fileInfo(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometrySummary(java.lang.String,java.util.List,java.lang.String)"
    - "[org.locationtech.jtstest.cmd.IndexedGeometry].<init>(java.util.List,boolean)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].outputList(java.util.List,java.lang.String)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:187"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:165,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].createGeometryFactory(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:169,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].loadGeometry()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:171,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].fileInfo(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:171,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometrySummary(java.lang.String,java.util.List,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:185,1"
      Dst: "[org.locationtech.jtstest.cmd.IndexedGeometry].<init>(java.util.List,boolean)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:189,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:193,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].outputList(java.util.List,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].createGeometryFactory(int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:199,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:199,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].loadGeometry()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].readGeometry(java.lang.String,java.lang.String,java.lang.String,int,int)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].explode(java.util.List)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].collect(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:205,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].readGeometry(java.lang.String,java.lang.String,java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:209,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].explode(java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:215,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].collect(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].readGeometry(java.lang.String,java.lang.String,java.lang.String,int,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "java.util.List"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].toList(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Throwable].getMessage()"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].limitLength(java.lang.String,int)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].readStdin(int,int)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].read(java.lang.String,int,int,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:432"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:433"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:436"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:435"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:440"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:417,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:417,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:420,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:422,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:423,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].toList(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:426,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:426,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:429,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].limitLength(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:429,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:436,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:437,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].readStdin(int,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:441,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].read(java.lang.String,int,int,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:105,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:106,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:107,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKBHexString(java.lang.String,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:109,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:110,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGML(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:112,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:113,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].readGeoJSON(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:115,1"
      Dst: "[org.locationtech.jtstest.util.io.IOUtil].readWKTString(java.lang.String,org.locationtech.jts.geom.GeometryFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].toList(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:241,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:242,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandError"
    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: "org.locationtech.jtstest.cmd.CommandError:16,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].limitLength(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    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.StringBuilder].<init>()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:463"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:464"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:463,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:464,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:464,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:464,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:464,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandError"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].readStdin(int,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].read(java.io.Reader,int,int,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:452,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:452,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].read(java.io.Reader,int,int,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:455,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:455,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:455,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:455,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:455,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].read(java.io.Reader,int,int,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "java.util.List"
    argCount: 4
    argTypes:
    - "java.io.Reader"
    - "int"
    - "int"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].setLimit(int)"
    - "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].setOffset(int)"
    - "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].read(java.io.Reader)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:38,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:39,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].setLimit(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:40,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].setOffset(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:41,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].read(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].setLimit(int)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].setOffset(int)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].read(java.io.Reader)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.io.BufferedReader].mark(int)"
    - "[java.io.BufferedReader].read(char[],int,int)"
    - "[java.io.BufferedReader].reset()"
    - "[java.lang.String].<init>(char[])"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].readWKBHex(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKT(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].readWKT(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:81,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:83,1"
      Dst: "[java.io.BufferedReader].mark(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:85,1"
      Dst: "[java.io.BufferedReader].read(char[],int,int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:86,1"
      Dst: "[java.io.BufferedReader].reset()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:88,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:89,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:90,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].readWKBHex(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:92,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKT(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:93,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].readWKT(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:95,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:95,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:95,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isHex(java.lang.String,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:42,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isHex(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].readWKBHex(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].setLimit(int)"
    - "[org.locationtech.jts.io.WKBHexFileReader].setOffset(int)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:101,1"
      Dst: "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:102,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:103,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].setLimit(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:104,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].setOffset(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:105,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.WKBReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.ByteOrderDataInStream].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBReader:141,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:132,1"
      Dst: "[org.locationtech.jts.io.ByteOrderDataInStream].<init>()"
    - Src: "org.locationtech.jts.io.WKBReader:143,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.WKBReader:144,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKBReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.io.WKBReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].setLimit(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].setOffset(int)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileReader].<init>(java.io.File)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    - "[java.io.BufferedReader].close()"
    - "[java.io.Reader].close()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKBHexFileReader:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKBHexFileReader:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:115,1"
      Dst: "[java.io.FileReader].<init>(java.io.File)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:119,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:121,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:123,1"
      Dst: "[java.io.BufferedReader].close()"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:126,1"
      Dst: "[java.io.Reader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKT(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:37"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:38,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:38,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatReader].isGML(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatReader:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatReader:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatReader:46,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatBufferedReader].readWKT(java.io.Reader,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - "[org.locationtech.jts.io.WKTFileReader].setLimit(int)"
    - "[org.locationtech.jts.io.WKTFileReader].setOffset(int)"
    - "[org.locationtech.jts.io.WKTFileReader].read()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:111,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:112,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:113,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].setLimit(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:114,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].setOffset(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatBufferedReader:115,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.WKTReader"
    linkageType: null
    functionLinenumber: 186
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTReader:187,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTReader:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.io.WKTReader:190,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.Reader,org.locationtech.jts.io.WKTReader)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.Reader"
    - "org.locationtech.jts.io.WKTReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].setLimit(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].setOffset(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].read()"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileReader].<init>(java.io.File)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader)"
    - "[java.io.BufferedReader].close()"
    - "[java.io.Reader].close()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTFileReader:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTFileReader:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:127,1"
      Dst: "[java.io.FileReader].<init>(java.io.File)"
    - Src: "org.locationtech.jts.io.WKTFileReader:131,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.io.WKTFileReader:133,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read(java.io.BufferedReader)"
    - Src: "org.locationtech.jts.io.WKTFileReader:135,1"
      Dst: "[java.io.BufferedReader].close()"
    - Src: "org.locationtech.jts.io.WKTFileReader:138,1"
      Dst: "[java.io.Reader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    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: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:27,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].read(java.lang.String,int,int,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "java.util.List"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].setLimit(int)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].setOffset(int)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readList(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:47,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:48,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].setLimit(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:49,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].setOffset(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:50,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readList(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].setLimit(int)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].setOffset(int)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readList(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readWKBHexFile(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readShapefile(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readGeoJSONFile(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readWKTFile(java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:107,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:108,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:109,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readWKBHexFile(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:111,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readShapefile(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:118,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readGeoJSONFile(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:120,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readWKTFile(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.FileUtil].extension(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.FileUtil].name(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.FileUtil:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.FileUtil:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.FileUtil:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:44,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].name(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:45,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jtstest.util.FileUtil:45,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "org.locationtech.jtstest.util.FileUtil:47,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.FileUtil:47,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readWKBHexFile(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.lang.String,org.locationtech.jts.io.WKBReader)"
    - "[org.locationtech.jts.io.WKBHexFileReader].setLimit(int)"
    - "[org.locationtech.jts.io.WKBHexFileReader].setOffset(int)"
    - "[org.locationtech.jts.io.WKBHexFileReader].read()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:132,1"
      Dst: "[org.locationtech.jts.io.WKBReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:133,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.lang.String,org.locationtech.jts.io.WKBReader)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:134,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].setLimit(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:135,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].setOffset(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:136,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.lang.String,org.locationtech.jts.io.WKBReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.io.WKBReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.File,org.locationtech.jts.io.WKBReader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:66,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKBHexFileReader:66,1"
      Dst: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.File,org.locationtech.jts.io.WKBReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKBHexFileReader].<init>(java.io.File,org.locationtech.jts.io.WKBReader)"
    functionSourceFile: "org.locationtech.jts.io.WKBHexFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "org.locationtech.jts.io.WKBReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKBHexFileReader:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readShapefile(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    - "[java.util.List].size()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:152,1"
      Dst: "[java.io.FileInputStream].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:155,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:158,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:162,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - "[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)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:199,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:200,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:204,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:205,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readGeoJSONFile(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readList(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:124,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:125,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:125,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readList(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:34,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.FileUtil].readText(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.FileUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.util.FileUtil].readText(java.io.File)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.FileUtil:88,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.FileUtil:88,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].readText(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readList(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollectionList(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometryList(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:38,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:39,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollectionList(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:41,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometryList(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isFeatureCollection(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:95,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readFeatureCollectionList(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].compile(java.lang.String)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group()"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isGeometry(java.lang.String)"
    - "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:65,1"
      Dst: "[java.util.regex.Pattern].compile(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:66,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:67,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:69,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:71,1"
      Dst: "[java.util.regex.Matcher].group()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:72,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].isGeometry(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:73,1"
      Dst: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometry(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:73,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.util.io.GeoJsonMultiReader].readGeometryList(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.GeoJsonMultiReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:58,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.util.io.GeoJsonMultiReader:60,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.io.Reader)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:94,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.geojson.GeoJsonReader:94,1"
      Dst: "[org.locationtech.jts.io.geojson.GeoJsonReader].read(java.io.Reader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.io.MultiFormatFileReader].readWKTFile(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.util.io.MultiFormatFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.io.WKTFileReader].<init>(java.lang.String,org.locationtech.jts.io.WKTReader)"
    - "[org.locationtech.jts.io.WKTFileReader].setLimit(int)"
    - "[org.locationtech.jts.io.WKTFileReader].setOffset(int)"
    - "[org.locationtech.jts.io.WKTFileReader].read()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:144"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.io.MultiFormatFileReader:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.io.MultiFormatFileReader:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:142,1"
      Dst: "[org.locationtech.jts.io.WKTReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:143,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].<init>(java.lang.String,org.locationtech.jts.io.WKTReader)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:144,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].setLimit(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:145,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].setOffset(int)"
    - Src: "org.locationtech.jtstest.util.io.MultiFormatFileReader:146,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTFileReader].<init>(java.lang.String,org.locationtech.jts.io.WKTReader)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.io.WKTReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.File,org.locationtech.jts.io.WKTReader)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:66,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTFileReader:66,1"
      Dst: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.File,org.locationtech.jts.io.WKTReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTFileReader].<init>(java.io.File,org.locationtech.jts.io.WKTReader)"
    functionSourceFile: "org.locationtech.jts.io.WKTFileReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "org.locationtech.jts.io.WKTReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTFileReader:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].explode(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].explode(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:226"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:227,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:228,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:228,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:228,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:229,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].explode(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].explode(org.locationtech.jts.geom.Geometry,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:235,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:236,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:236,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].collect(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].toList(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:221,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:220,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:222,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].toList(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].fileInfo(java.lang.String,int,int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "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()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:534"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:535"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:534"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:537"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:536"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:537"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:538"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:537"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:536,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:536,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:536,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:536,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometrySummary(java.lang.String,java.util.List,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,java.util.List)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:521"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:523"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:524"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:523"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:523,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:523,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:523,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:524,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:524,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.GeometryOutput].getNumPoints(java.util.List)"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].getTypesSummary(java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,int,java.lang.String,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:93,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].getNumPoints(java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:94,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].getTypesSummary(java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:95,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:95,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,int,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:514"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:515"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:514"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:515,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.CommandOutput:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.CommandOutput:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:39,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.CommandOutput:42,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].<init>(java.util.List,boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.cmd.IndexedGeometry].initIndex(java.util.List)"
    - "[org.locationtech.jtstest.cmd.IndexedGeometry].initList(java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:647"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:651"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:650"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:646,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:648,1"
      Dst: "[org.locationtech.jtstest.cmd.IndexedGeometry].initIndex(java.util.List)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:651,1"
      Dst: "[org.locationtech.jtstest.cmd.IndexedGeometry].initList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].initIndex(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[java.lang.Integer].<init>(int)"
    - "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:665"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:668"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:664,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:665,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:666,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:667,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:667,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:667,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].initList(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].size()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:657"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:659"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:656,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:657,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:658,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:658,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].getFunction(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int,double)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].checkFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,java.util.List,java.lang.String[])"
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.String[])"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOverA(org.locationtech.jtstest.cmd.FunctionInvoker)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:261"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:256,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].getFunction(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:259,1"
      Dst: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int,double)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:263,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:266,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].checkFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,java.util.List,java.lang.String[])"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:268,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.String[])"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:269,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOverA(org.locationtech.jtstest.cmd.FunctionInvoker)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:272,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:272,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:272,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:272,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:272,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:273,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:273,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:272,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].getFunction(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].find(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:577"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:576"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:572,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:577,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].find(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].find(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:380"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:379"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:378"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:379"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:374,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:374,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:375,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:376,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:377,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:377,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int,double)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].checkFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,java.util.List,java.lang.String[])"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "java.util.List"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:563"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:562"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:563"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:566"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:565"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:542,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:556,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:564,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:564,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.String[])"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:591,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOverA(org.locationtech.jtstest.cmd.FunctionInvoker)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.cmd.FunctionInvoker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOverB(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:280,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:284,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:285,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:285,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:285,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:285,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:285,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:287,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:290,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOverB(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:86,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.cmd.FunctionInvoker"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].getNumInvocations()"
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].getArgs(int)"
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].getFunction()"
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].getValue(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].opSummary(org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionRepeat(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.Object[])"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:320"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:310,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].getNumInvocations()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:311,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].getArgs(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:312,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].getFunction()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:313,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].getValue(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:315,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:315,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:315,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:315,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].opSummary(org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:315,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:317,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:322,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionRepeat(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getNumInvocations()"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:610"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:609"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getArgs(int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].createFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:620"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:620"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:619"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.FunctionInvoker:621,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].createFunctionArgs(org.locationtech.jtstest.geomfunction.GeometryFunction,org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].getValue(int)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.FunctionInvoker:614"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:617"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.FunctionInvoker:616"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].opSummary(org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:470"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:473"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:472"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:468,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:469,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:469,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:469,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:469,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionRepeat(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOnce(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.Object[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:334"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:333"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:328,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:330,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:330,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:330,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:330,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:330,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:330,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:332,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOnce(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOnce(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.geomfunction.GeometryFunction,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].<init>()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - "[org.locationtech.jts.util.Stopwatch].stop()"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].errorMsg(java.lang.Throwable)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].logError(java.lang.String)"
    - "[org.locationtech.jts.util.Stopwatch].getTime()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].validate(java.lang.Object)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].outputResult(java.lang.Object,boolean,java.lang.String)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:337"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:362"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:361"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:365"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:364"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:368"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:367"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:338,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:341,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:353,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].stop()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:345,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:347,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].errorMsg(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:347,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].logError(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:355,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTime()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:356,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:356,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:356,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:356,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:356,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:360,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:363,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].validate(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:366,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].outputResult(java.lang.Object,boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.util.Stopwatch].<init>()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.util.Stopwatch].start()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.Stopwatch:28,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].stop()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Stopwatch:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Stopwatch:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Stopwatch:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:41,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].errorMsg(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].toStackString(java.lang.Throwable)"
    - "[java.lang.Throwable].getCause()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:374"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:378"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:377"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:372,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:372,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:372,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:372,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:373,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].toStackString(java.lang.Throwable)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:374,1"
      Dst: "[java.lang.Throwable].getCause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].toStackString(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[java.io.PrintWriter].<init>(java.io.Writer)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    - "[java.io.StringWriter].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:382,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:383,1"
      Dst: "[java.io.PrintWriter].<init>(java.io.Writer)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:384,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintWriter)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:385,1"
      Dst: "[java.io.StringWriter].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].logError(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:391,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTime()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:70,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].getTime()"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:76,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTime()"
    - Src: "org.locationtech.jts.util.Stopwatch:77,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:529"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:530"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:529"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:530,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:530,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].printlnInfo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].validate(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].logError(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:397"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:396"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:403"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:402"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:400,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:401,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].logError(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].outputResult(java.lang.Object,boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:491"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:490"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:491"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:490"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:486"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:485"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:481,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:486,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:487,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:487,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].printGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].printGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:505"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:504"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:506"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:507"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:510"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:509"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:508,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:510,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].printGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.GeometryOutput].printGeometry(org.locationtech.jts.geom.Geometry,int,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.GeometryOutput"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].toString()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeWKB(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeoJSON(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeSVG(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:53"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:56"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:60"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.GeometryOutput:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.GeometryOutput:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:44,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:49,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeWKB(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:52,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].<init>()"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:52,1"
      Dst: "[org.locationtech.jts.io.gml2.GMLWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:55,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeoJSON(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeSVG(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.GeometryOutput:62,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandOutput].println(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunctionOverB(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 20
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.cmd.FunctionInvoker"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.IndexedGeometry].query(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.FunctionInvoker].setB(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:297,1"
      Dst: "[org.locationtech.jtstest.cmd.IndexedGeometry].query(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:298,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:298,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:298,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:298,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:299,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:300,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:300,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:300,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:300,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:300,1"
      Dst: "[org.locationtech.jtstest.cmd.GeometryOutput].writeGeometrySummary(java.lang.String,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:301,1"
      Dst: "[org.locationtech.jtstest.cmd.FunctionInvoker].setB(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:302,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].executeFunction(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.cmd.FunctionInvoker,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.IndexedGeometry].query(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.IndexedGeometry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.Collections].sort(java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.IndexedGeometry:674"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:680"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.IndexedGeometry:679"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:675,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:675,1"
      Dst: "[org.locationtech.jts.index.SpatialIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.cmd.IndexedGeometry:677,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.cmd.FunctionInvoker].setB(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.cmd.FunctionInvoker"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].getTimeString(long)"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(double)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Stopwatch:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Stopwatch:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Stopwatch:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.Stopwatch:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.Stopwatch:83,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].outputList(java.util.List,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].outputResult(java.lang.Object,boolean,java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:495"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:495"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:496"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:497"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner:498"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:501"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner:500"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:498,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:498,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:498,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner:499,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].outputResult(java.lang.Object,boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseArgs(java.lang.String[])"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.command.CommandLine].parse(java.lang.String[])"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].<init>()"
    - "[org.locationtech.jtstest.command.CommandLine].getOptionArg(java.lang.String,int)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].isFilename(java.lang.String)"
    - "[org.locationtech.jtstest.command.CommandLine].hasOption(java.lang.String)"
    - "[org.locationtech.jtstest.command.CommandLine].getOptionArgAsInt(java.lang.String,int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].parseFilterOp(java.lang.String)"
    - "[org.locationtech.jtstest.command.CommandLine].getOptionArgAsNum(java.lang.String,int)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].setVerbose(boolean)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner].setTime(boolean)"
    - "[org.locationtech.jtstest.command.CommandLine].getOption(java.lang.String)"
    - "[org.locationtech.jtstest.command.Option].getNumArgs()"
    - "[org.locationtech.jtstest.command.Option].getArg(int)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(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)"
    - "[org.locationtech.jtstest.command.CommandLine].getOptionArgs(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].parseOpArg(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].isGeometryInput(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 186
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:307"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:306"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:315"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:330"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:329"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:337"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:353"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:360"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:359"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:362"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:363"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:362"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:369"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:370"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:370"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:369"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:389"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:388"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:389"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:388"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:394"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:393"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:404"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:403"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:404"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:409"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:408"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:297,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].parse(java.lang.String[])"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:299,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:301,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].getOptionArg(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:303,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].isFilename(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:330,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].hasOption(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:334,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].getOptionArgAsInt(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:353,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:360,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseFilterOp(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:363,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].getOptionArgAsNum(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:371,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].setVerbose(boolean)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:372,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner].setTime(boolean)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:377,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].getOption(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:378,1"
      Dst: "[org.locationtech.jtstest.command.Option].getNumArgs()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:379,1"
      Dst: "[org.locationtech.jtstest.command.Option].getArg(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:381,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:382,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:382,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:382,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:382,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:389,1"
      Dst: "[org.locationtech.jtstest.command.CommandLine].getOptionArgs(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:395,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseOpArg(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:404,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].isGeometryInput(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 22
    BBCount: 54
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].<init>()"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].isFilename(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].isWKT(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:263"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:263"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:263,1"
      Dst: "[org.locationtech.jtstest.util.io.MultiFormatReader].isWKB(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:264,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].isWKT(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseFilterOp(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:479"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:478"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:481"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:482"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:481"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:483"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:482"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:477,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:483,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.CommandError"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.cmd.CommandError:19,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].setVerbose(boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner].setTime(boolean)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.lang.Class)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:230,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:230,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:230,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:231,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].createFunctions(java.lang.Class)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.util.Collection)"
    - "[java.util.Collections].sort(java.util.List)"
    functionUses: 49
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:215,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].createFunctions(java.lang.Class)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:217,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:218,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].createFunctions(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].isGeometryFunction(java.lang.reflect.Method)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].createFunction(java.lang.reflect.Method)"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Class].getMethods()"
    - "[java.lang.reflect.Method].getModifiers()"
    - "[java.lang.reflect.Modifier].isStatic(int)"
    - "[java.lang.reflect.Modifier].isPublic(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:261"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:260"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:251"
        BranchSideFuncs:
        - "isGeometryFunction(java.lang.reflect.Method)"
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:251"
        BranchSideFuncs:
        - "createFunction(java.lang.reflect.Method)"
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:251,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:252,1"
      Dst: "[java.lang.Class].getMethods()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:254,1"
      Dst: "[java.lang.reflect.Method].getModifiers()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:255,1"
      Dst: "[java.lang.reflect.Modifier].isStatic(int)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:256,1"
      Dst: "[java.lang.reflect.Modifier].isPublic(int)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:257,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].isGeometryFunction(java.lang.reflect.Method)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:258,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].createFunction(java.lang.reflect.Method)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:258,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].isGeometryFunction(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: 265
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:266,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:266,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].createFunction(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 4
    returnType: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractCategory(java.lang.String)"
    - "[org.locationtech.jtstest.util.ClassUtil].getClassname(java.lang.Class)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractDescription(java.lang.reflect.Method)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractParamNames(java.lang.reflect.Method)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractParamTypes(java.lang.reflect.Method)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String[],java.lang.Class[],java.lang.Class,java.lang.reflect.Method)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.reflect.Method].getDeclaringClass()"
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.reflect.Method].getReturnType()"
    functionUses: 1
    ICount: 17
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:42,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:42,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:42,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:44,1"
      Dst: "[java.lang.reflect.Method].getDeclaringClass()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:46,1"
      Dst: "[org.locationtech.jtstest.util.ClassUtil].getClassname(java.lang.Class)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:46,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractCategory(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:47,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:48,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractDescription(java.lang.reflect.Method)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:49,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractParamNames(java.lang.reflect.Method)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:50,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractParamTypes(java.lang.reflect.Method)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:51,1"
      Dst: "[java.lang.reflect.Method].getReturnType()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:53,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String[],java.lang.Class[],java.lang.Class,java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:29,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].getClassname(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: 25
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[java.lang.String].lastIndexOf(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:26,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jtstest.util.ClassUtil:27,1"
      Dst: "[java.lang.String].lastIndexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.util.ClassUtil:28,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.util.ClassUtil:28,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractCategory(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.StringUtil].removeFromEnd(java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:61,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].removeFromEnd(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractDescription(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - "[org.locationtech.jtstest.geomfunction.Metadata].description()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:119,1"
      Dst: "[java.lang.reflect.Method].getAnnotation(java.lang.Class)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:120,1"
      Dst: "[org.locationtech.jtstest.geomfunction.Metadata].description()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractParamNames(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 3
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].defaultParamNames(java.lang.reflect.Method)"
    - "[org.locationtech.jtstest.geomfunction.MetadataUtil].title(java.lang.'annotation'.Annotation[])"
    - "[java.lang.reflect.Method].getParameterAnnotations()"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:84"
        BranchSideFuncs:
        - "title(java.lang.'annotation'.Annotation[])"
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:73"
        BranchSideFuncs:
        - "defaultParamNames(java.lang.reflect.Method)"
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:74,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].defaultParamNames(java.lang.reflect.Method)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:76,1"
      Dst: "[java.lang.reflect.Method].getParameterAnnotations()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:79,1"
      Dst: "[org.locationtech.jtstest.geomfunction.MetadataUtil].title(java.lang.'annotation'.Annotation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].defaultParamNames(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 2
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].firstScalarParamIndex(java.lang.reflect.Method)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].paramNamePrimary(java.lang.Class)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:88"
        BranchSideFuncs:
        - "paramNamePrimary(java.lang.Class)"
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:87"
        BranchSideFuncs:
        - "firstScalarParamIndex(java.lang.reflect.Method)"
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:88,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].firstScalarParamIndex(java.lang.reflect.Method)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:90,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:94,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:94,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:96,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].paramNamePrimary(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].firstScalarParamIndex(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    - "[java.lang.reflect.Method].getParameterTypes()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:null"
        BranchSideFuncs:
        - "isGeometry(java.lang.Class)"
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:102,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:104,1"
      Dst: "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].isGeometry(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.util.ClassUtil:106,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].paramNamePrimary(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.ClassUtil].isDouble(java.lang.Class)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:112"
        BranchSideFuncs:
        - "isDouble(java.lang.Class)"
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:111"
        BranchSideFuncs:
        - "isDouble(java.lang.Class)"
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:112,1"
      Dst: "[org.locationtech.jtstest.util.ClassUtil].isDouble(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.util.ClassUtil].isDouble(java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.util.ClassUtil"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.util.ClassUtil:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.util.ClassUtil:101"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.MetadataUtil].title(java.lang.'annotation'.Annotation[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.MetadataUtil"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.Metadata].title()"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:36"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:30"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:30"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:29"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.MetadataUtil:34,1"
      Dst: "[org.locationtech.jtstest.geomfunction.Metadata].title()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractParamTypes(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getParameterTypes()"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:126,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String[],java.lang.Class[],java.lang.Class,java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String[]"
    - "java.lang.Class[]"
    - "java.lang.Class"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String[],java.lang.Class[],java.lang.Class)"
    - "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractRequiredB(java.lang.reflect.Method)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:156,1"
      Dst: "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String[],java.lang.Class[],java.lang.Class)"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:158,1"
      Dst: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractRequiredB(java.lang.reflect.Method)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction].extractRequiredB(java.lang.reflect.Method)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.MetadataUtil].isRequired(java.lang.'annotation'.Annotation[])"
    - "[java.lang.reflect.Method].getParameterAnnotations()"
    - "[java.lang.reflect.Method].getParameterTypes()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:142"
        BranchSideFuncs:
        - "isRequired(java.lang.'annotation'.Annotation[])"
      - BranchSide: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:135,1"
      Dst: "[java.lang.reflect.Method].getParameterAnnotations()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:137,1"
      Dst: "[java.lang.reflect.Method].getParameterTypes()"
    - Src: "org.locationtech.jtstest.geomfunction.StaticMethodGeometryFunction:140,1"
      Dst: "[org.locationtech.jtstest.geomfunction.MetadataUtil].isRequired(java.lang.'annotation'.Annotation[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.MetadataUtil].isRequired(java.lang.'annotation'.Annotation[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.MetadataUtil"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.annotation.Annotation[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.Metadata].isRequired()"
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:40"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.MetadataUtil:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:41"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.MetadataUtil:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.MetadataUtil:45,1"
      Dst: "[org.locationtech.jtstest.geomfunction.Metadata].isRequired()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:241"
        BranchSideFuncs:
        - "add(org.locationtech.jtstest.geomfunction.GeometryFunction)"
        - "next()"
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:237,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:237,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:238,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:239,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].add(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: 277
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.function.DoubleKeyMap].put(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].hasGeometryResult(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    functionUses: 1
    ICount: 23
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:284"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object,java.lang.Object)"
        - "getName()"
        - "getCategory()"
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:278,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:279,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:279,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:280,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:280,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].put(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:281,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].hasGeometryResult(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DoubleKeyMap].put(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.function.DoubleKeyMap"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.DoubleKeyMap].createKeyMap(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DoubleKeyMap:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:30"
        BranchSideFuncs:
        - "createKeyMap(java.lang.Object)"
      - BranchSide: "org.locationtech.jtstest.function.DoubleKeyMap:29"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:27,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:29,1"
      Dst: "[org.locationtech.jtstest.function.DoubleKeyMap].createKeyMap(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DoubleKeyMap:30,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry].hasGeometryResult(org.locationtech.jtstest.geomfunction.GeometryFunction)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getReturnType()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getReturnType()"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getReturnType()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getReturnType()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getReturnType()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:192,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getReturnType()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionRegistry:192,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseOpArg(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].isArgMultiValues(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].parseValues(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:417"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:422"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:425"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:417,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].isArgMultiValues(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:418,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseValues(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:422,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:423,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].isArgMultiValues(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].indexOf(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:440"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:444"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:447"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:447"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:440,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:443,1"
      Dst: "[java.lang.String].indexOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseValues(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].parseMacroArgs(java.lang.String)"
    - "[java.lang.String].split(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:452,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:457,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseMacroArgs(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:460,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseMacroArgs(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].split(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:468"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:469"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:468"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:468"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:472"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:464,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:469,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:472,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:473,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpRunner$OpParams].isGeometryInput(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpRunner$OpParams:123"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseOpArg(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].isArgMultiValues(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].parseValues(java.lang.String)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:417"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:422"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:422"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:426"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:425"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:417,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].isArgMultiValues(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:418,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseValues(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:422,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:423,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].isArgMultiValues(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].indexOf(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:440"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:440"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:444"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:442"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:447"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:447"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:440,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:443,1"
      Dst: "[java.lang.String].indexOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseValues(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[org.locationtech.jtstest.cmd.JTSOpCmd].parseMacroArgs(java.lang.String)"
    - "[java.lang.String].split(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:453"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:452"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:451"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:454"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:456"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:460"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:452,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:457,1"
      Dst: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseMacroArgs(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:460,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseMacroArgs(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].split(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:468"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:469"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:468"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:468"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:472"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:464,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:469,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:472,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:473,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.cmd.JTSOpCmd].parseFilterOp(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.cmd.JTSOpCmd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:477"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:478"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:477"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:478"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:479"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:478"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:480"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:479"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:481"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:482"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:481"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.cmd.JTSOpCmd:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:483"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.cmd.JTSOpCmd:482"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:477,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.cmd.JTSOpCmd:483,1"
      Dst: "[org.locationtech.jtstest.cmd.CommandError].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:59,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.geom.LinearRing:59,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.LinearRing:60,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:70,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.LinearRing:70,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.LinearRing:70,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:85,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.LinearRing:86,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LinearRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LinearRing:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LinearRing:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LinearRing:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LinearRing:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:97"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.LinearRing:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LinearRing:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:97"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.LinearRing:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:90,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LinearRing:90,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    - Src: "org.locationtech.jts.geom.LinearRing:91,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LinearRing:93,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.LinearRing:93,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.LinearRing:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.LinearRing:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LinearRing:95,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.LinearRing:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LinearRing].getBoundaryDimension()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 105
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].isClosed()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isClosed()"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LinearRing:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LinearRing:119"
        BranchSideFuncs:
        - "isClosed()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:116,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.LinearRing:120,1"
      Dst: "[org.locationtech.jts.geom.LineString].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LinearRing].getGeometryType()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 124
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].getTypeCode()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 128
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].copyInternal()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:133,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.geom.LinearRing:133,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:85,1"
      Dst: "[org.locationtech.jts.geom.LineString].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.LinearRing:86,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].validateConstruction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].reverse()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:138,1"
      Dst: "[org.locationtech.jts.geom.LineString].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].reverseInternal()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    functionUses: 1
    ICount: 7
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:142,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.geom.LinearRing:143,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.LinearRing:144,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.LinearRing:144,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 4
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:32"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:31,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:36,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence:org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 15
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:50"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:49"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:50,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:52,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:40,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:41,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].<init>(org.locationtech.jts.geom.PrecisionModel,boolean)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:47,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformCoordinates(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceCompress(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].extend(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 31
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:56"
        BranchSideFuncs:
        - "reduceCompress(org.locationtech.jts.geom.CoordinateSequence)"
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:77"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:83"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:81"
        BranchSideFuncs:
        - "extend(org.locationtech.jts.geom.Coordinate[],int)"
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:54,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:57,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceCompress(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:82,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].extend(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceCompress(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:106"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:101,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:102,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:102,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:103,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:104,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:107,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].extend(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:93,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 686
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequenceFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].extend(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:93,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceCompress(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.PrecisionReducerTransformer:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.PrecisionReducerTransformer:106"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:99,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:101,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:102,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:102,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:103,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:104,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:107,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceArea(org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:112,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceArea(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:120,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionReducer"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setAreaResultOnly(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PrecisionReducer:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionReducer:62"
        BranchSideFuncs:
        - "setAreaResultOnly(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionReducer:61"
        BranchSideFuncs:
        - "getResult()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:53,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:59,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setAreaResultOnly(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionReducer:66,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceArea(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:116,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceArea(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:120,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduceArea(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.PrecisionReducerTransformer"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.PrecisionReducerTransformer:120,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionReducer].reducePrecision(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Stack].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:18,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:20,1"
      Dst: "[java.util.Stack].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].save(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].push(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:23"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:24"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:23"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:24,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:28,1"
      Dst: "[java.util.Vector].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Stack].peek()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:32,1"
      Dst: "[java.util.Stack].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].isEmpty()"
    - "[java.util.Stack].pop()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:36,1"
      Dst: "[java.util.Vector].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:37,1"
      Dst: "[java.util.Stack].pop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    - "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:47"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:50"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].isEmpty()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].peek()"
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:49,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].pop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.UndoBuffer].clear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.UndoBuffer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].clear()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.UndoBuffer:54,1"
      Dst: "[java.util.Vector].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    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: "org.locationtech.jts.index.strtree.EnvelopeDistance:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].maximumDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[java.lang.Math].min(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:37,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:37,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:38,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:39,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:39,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:40,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:41,1"
      Dst: "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:47,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].minMaxDistance(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.index.strtree.EnvelopeDistance].maxDistance(double,double,double,double,double,double,double,double)"
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:69,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:76,1"
      Dst: "[org.locationtech.jts.index.strtree.EnvelopeDistance].maxDistance(double,double,double,double,double,double,double,double)"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:77,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].maxDistance(double,double,double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 8
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:114,1"
      Dst: "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:115,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:47,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.EnvelopeDistance].maxDistance(double,double,double,double,double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.index.strtree.EnvelopeDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 8
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:114,1"
      Dst: "[org.locationtech.jts.index.strtree.EnvelopeDistance].distance(double,double,double,double)"
    - Src: "org.locationtech.jts.index.strtree.EnvelopeDistance:115,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    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: "org.locationtech.jtstest.function.TriangleFunctions:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].centroid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions$1].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:27,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions$1].<init>()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:27,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$1].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$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: "org.locationtech.jtstest.function.TriangleFunctions$1:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].circumcentre(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions$2].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:39,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions$2].<init>()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:39,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$2].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$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: "org.locationtech.jtstest.function.TriangleFunctions$2:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].circumradius(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:51,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:52,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.TriangleFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:120,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:116,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:119,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].circumcircle(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].buffer(double,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:57,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:58,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:59,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:60,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:61,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.TriangleFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:120,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Triangle].circumcentreDD(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].subtract(double)"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(double)"
    - "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].doubleValue()"
    - "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 42
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:223,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.geom.Triangle:223,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(double)"
    - Src: "org.locationtech.jts.geom.Triangle:228,1"
      Dst: "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:228,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(double)"
    - Src: "org.locationtech.jts.geom.Triangle:229,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.geom.Triangle:229,1"
      Dst: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.geom.Triangle:234,1"
      Dst: "[org.locationtech.jts.math.DD].doubleValue()"
    - Src: "org.locationtech.jts.geom.Triangle:237,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Triangle].circumradius(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Triangle:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Triangle:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Triangle:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:116,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:119,1"
      Dst: "[org.locationtech.jts.geom.Triangle].area(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].circumcentreDD(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions$3].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:66,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions$3].<init>()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$3].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$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: "org.locationtech.jtstest.function.TriangleFunctions$3:67,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].perpendicularBisectors(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Triangle].circumcentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:78,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.Triangle].circumcentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:80,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:88,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.TriangleFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:120,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Triangle].circumcentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 182
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Triangle].det(double,double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 36
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:190,1"
      Dst: "[org.locationtech.jts.geom.Triangle].det(double,double,double,double)"
    - Src: "org.locationtech.jts.geom.Triangle:197,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Triangle].det(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 255
    functionDepth: 0
    returnType: "double"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].closestPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 533
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:538"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:537"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:542"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:534,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:536,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].project(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:538,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].incentre(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions$4].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:93,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions$4].<init>()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:93,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions$4].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions$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: "org.locationtech.jtstest.function.TriangleFunctions$4:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].map(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:48,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper$MapOp].map(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:52,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].angleBisectors(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:105,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:106,1"
      Dst: "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:107,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.TriangleFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:120,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Triangle].inCentre(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Triangle"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 2
    ICount: 29
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Triangle:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.Triangle:286,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.TriangleFunctions:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.TriangleFunctions:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:120,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.TriangleFunctions].access$000(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.TriangleFunctions"
    linkageType: null
    functionLinenumber: 22
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.TriangleFunctions:23,1"
      Dst: "[org.locationtech.jtstest.function.TriangleFunctions].trianglePts(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean,org.locationtech.jts.operation.overlayng.OverlayLabel,org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:46,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean,org.locationtech.jts.operation.overlayng.OverlayLabel,org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdgePair(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel,boolean)"
    - "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:51,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].createEdge(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.overlayng.OverlayLabel,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:53,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].link(org.locationtech.jts.edgegraph.HalfEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nodeComparator()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.Comparator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:63,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge$1].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge$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: "org.locationtech.jts.operation.overlayng.OverlayEdge$1:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean,org.locationtech.jts.operation.overlayng.OverlayLabel,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    - "org.locationtech.jts.operation.overlayng.OverlayLabel"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:100,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isForward()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 107
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].directionPt()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:119,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].getLocation(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:123,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinatesOriented()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 130
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Text].clone()"
    - "[org.jdom2.EntityRef].clone()"
    - "[org.jdom2.output.StAXEventOutputter].clone()"
    - "[org.jdom2.CloneBase].clone()"
    - "[org.locationtech.jts.geom.GeometryCollection].clone()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].clone()"
    - "[org.jdom2.DocType].clone()"
    - "[org.jdom2.Element].clone()"
    - "[org.jdom2.xpath.util.AbstractXPathCompiled].clone()"
    - "[org.jdom2.CDATA].clone()"
    - "[org.locationtech.jts.math.DD].clone()"
    - "[org.locationtech.jts.geom.Point].clone()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].clone()"
    - "[org.locationtech.jts.geom.CoordinateList].clone()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].clone()"
    - "[org.locationtech.jts.geom.Coordinate].clone()"
    - "[org.locationtech.jts.geom.Polygon].clone()"
    - "[org.jdom2.ProcessingInstruction].clone()"
    - "[org.locationtech.jts.geom.Geometry].clone()"
    - "[org.jdom2.Attribute].clone()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].clone()"
    - "[org.locationtech.jts.geom.LineString].clone()"
    - "[org.jdom2.Comment].clone()"
    - "[org.jdom2.Document].clone()"
    - "[org.jdom2.Content].clone()"
    - "[org.jdom2.xpath.jaxen.JaxenCompiled].clone()"
    - "[org.locationtech.jts.math.Vector2D].clone()"
    - "[org.jdom2.output.StAXStreamOutputter].clone()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].clone()"
    - "[org.locationtech.jts.linearref.LinearLocation].clone()"
    - "[org.jdom2.output.Format].clone()"
    - "[org.jdom2.output.XMLOutputter].clone()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 10
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:133"
        BranchSideFuncs:
        - "clone()"
        - "reverse(org.locationtech.jts.geom.Coordinate[])"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:134,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:135,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].addCoordinates(org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    functionUses: 2
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:156"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:150,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:155,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 16
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:173,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 183
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:184,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].oNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultAreaBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 191
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:191"
        BranchSideFuncs:
        - "symOE()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:191"
        BranchSideFuncs:
        - "symOE()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:192,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].unmarkFromResultAreaBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 195
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:197,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 200
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultAreaBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:206,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:173,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultLine()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 209
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markInResultLine()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:215,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 218
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:218"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultEither()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 222
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:222"
        BranchSideFuncs:
        - "isInResult()"
        - "symOE()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:222"
        BranchSideFuncs:
        - "isInResult()"
        - "symOE()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:223,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:223,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 227
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 231
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:235"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResultMax(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultMaxLinked()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:248"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isVisited()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 252
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisitedBoth()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:261,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].markVisited()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:262,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRing(org.locationtech.jts.operation.overlayng.OverlayEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 265
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 269
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 273
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 277
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].toString()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].directionPt()"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].toString(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].resultSymbol()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:282,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:283,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:285,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:285,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:285,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].directionPt()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:285,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:285,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:292,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].toString(boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:293,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].resultSymbol()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:294,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:294,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].directionPt()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:140,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayLabel].toString(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    linkageType: null
    functionLinenumber: 663
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayLabel].locationString(int,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:664,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:665,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:666,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayLabel].locationString(int,boolean)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayLabel:669,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].resultSymbol()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:301"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayEdge:173,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getLabel()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayLabel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].resultSymbol()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayEdge:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:302"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayEdge:301"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].<init>(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:129,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].id()"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 134
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:139,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].intersects(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:144,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:145,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].prepare(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:42,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].isInSameCluster(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:150"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].merge(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].add(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:161"
        BranchSideFuncs:
        - "add(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:156,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:159,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].add(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].add(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].initCluster()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].getRoot()"
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:182"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:181"
        BranchSideFuncs:
        - "getRoot()"
        - "mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:174,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].initCluster()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:179,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:182,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].getRoot()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:182,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].initCluster()"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 166
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:169,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:170,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].getRoot()"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 204
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:205,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:196"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:201"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:195,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].initCluster()"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 166
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:169,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:170,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].add(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].initCluster()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].getRoot()"
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:182"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:181"
        BranchSideFuncs:
        - "getRoot()"
        - "mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:174,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].initCluster()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:179,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:182,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].getRoot()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:182,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].mergeRoot(org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:196"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:201"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "iterator()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:195,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:198,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].getRoot()"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: 204
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:205,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].toPolygons(java.util.List)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:212"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:215,1"
      Dst: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].toPolygons(java.util.List)"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:215,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].toPolygons(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:219,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:221,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:81,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:82,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:112,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection,org.locationtech.jts.operation.union.UnionStrategy)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.operation.union.UnionStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].size()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:122,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:127,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:128,1"
      Dst: "[java.util.Collection].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - "[java.util.Iterator].hasNext()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].itemsTree()"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionTree(java.util.List)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.CascadedPolygonUnion:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.CascadedPolygonUnion:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:157,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:158,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:160,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:169,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:170,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:172,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:172,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:177,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].itemsTree()"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:179,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].unionTree(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode].toPolygons(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:219,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:220,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.union.SparsePolygonUnion$PolygonNode:221,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:42,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].insertEdgeEnd(org.locationtech.jts.geomgraph.EdgeEnd,java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:50,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].insertEdgeEnd(org.locationtech.jts.geomgraph.EdgeEnd,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Label"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getOutgoingDegree()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:58,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:58,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:59,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:60,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getOutgoingDegree(org.locationtech.jts.geomgraph.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 13
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:71"
        BranchSideFuncs:
        - "next()"
        - "getEdgeRing()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:67,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:67,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:68,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:69,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeRing"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getRightmostEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 2
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getQuadrant()"
    - "[org.locationtech.jts.geom.Quadrant].isNorthern(int)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getDy()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 34
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:81"
        BranchSideFuncs:
        - "getQuadrant()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:80"
        BranchSideFuncs:
        - "getQuadrant()"
        - "get(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:86"
        BranchSideFuncs:
        - "isNorthern(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:86"
        BranchSideFuncs:
        - "isNorthern(int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:94"
        BranchSideFuncs:
        - "getDy()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:97"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:76,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:77,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:79,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:83,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getQuadrant()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:85,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].isNorthern(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:93,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getDy()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:98,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 15
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.GeometryGraph[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - "[org.locationtech.jts.geomgraph.Label].<init>(int)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 25
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:125"
        BranchSideFuncs:
        - "getEdge()"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:123"
        BranchSideFuncs:
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:121"
        BranchSideFuncs:
        - "setLocation(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:120"
        BranchSideFuncs:
        - "setLocation(int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:115"
        BranchSideFuncs:
        - "setLocation(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:114"
        BranchSideFuncs:
        - "getEdge()"
        - "getLabel()"
        - "next()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:109,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:113,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:114,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:114,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:115,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:116,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:117,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:119,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:121,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:63,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Edge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:125,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:132,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].mergeSymLabels()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:138"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:133,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:133,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:135,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:136,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:136,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].updateLabelling(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setAllLocationsIfNull(int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:153"
        BranchSideFuncs:
        - "setAllLocationsIfNull(int,int)"
        - "getLabel()"
        - "next()"
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:147,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:147,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:148,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:149,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:150,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:150,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setAllLocationsIfNull(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:159"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:158"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:165"
        BranchSideFuncs:
        - "isInResult()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:163"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:164"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:159,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:160,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:160,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:162,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:163,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkResultDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 190
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 51
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:222"
        BranchSideFuncs:
        - "isArea()"
        - "getLabel()"
        - "getSym()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:215"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:227"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:226"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "isInResult()"
        - "setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:191,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getResultAreaEdges()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:197,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:198,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:199,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:202,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:205,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:216,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:225,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:225,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:227,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkMinimalDirectedEdges(org.locationtech.jts.geomgraph.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setNextMin(org.locationtech.jts.geomgraph.DirectedEdge)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 52
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
        BranchSideFuncs:
        - "getSym()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:252"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:263"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdgeRing()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260"
        BranchSideFuncs:
        - "setNextMin(org.locationtech.jts.geomgraph.DirectedEdge)"
        - "isTrue(boolean,java.lang.String)"
        - "getEdgeRing()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:259"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:238,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:239,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:240,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:243,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdgeRing()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:253,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setNextMin(org.locationtech.jts.geomgraph.DirectedEdge)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:260,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 22
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].linkAllDirectedEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:276"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:267,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getEdges()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:272,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:273,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:274,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:276,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setNext(org.locationtech.jts.geomgraph.DirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].findCoveredLineEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 302
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].setCovered(boolean)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 52
    EdgeCount: 76
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:308"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:316"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:325"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:341"
        BranchSideFuncs:
        - "isLineEdge()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:340"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:335"
        BranchSideFuncs:
        - "setCovered(boolean)"
        - "getEdge()"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:334"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:331"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:330"
        BranchSideFuncs:
        - "setCovered(boolean)"
        - "getEdge()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:336"
        BranchSideFuncs:
        - "isInResult()"
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:304,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:304,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:305,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:306,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:307,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isLineEdge()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:308,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:331,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:331,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].setCovered(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 23
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(org.locationtech.jts.geomgraph.DirectedEdge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.DirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].findIndex(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(int,int,int)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[java.util.List].size()"
    - "[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: 21
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:357"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:345,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].findIndex(org.locationtech.jts.geomgraph.EdgeEnd)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:346,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:349,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:349,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:355,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeDepths(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: 365
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeDepths(int,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:371"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:368,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:369,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setEdgeDepths(int,int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:370,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepth(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdgeStar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].print(java.io.PrintStream)"
    - "[java.io.PrintStream].println()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdgeStar:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdgeStar:386"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:377,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:377,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:377,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:377,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:377,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:377,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:378,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:378,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:379,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:380,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:381,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].print(java.io.PrintStream)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:382,1"
      Dst: "[java.io.PrintStream].println()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdgeStar:384,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].print(java.io.PrintStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getDepthDelta()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:222,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].print(java.io.PrintStream)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:223,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:223,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:223,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:223,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:223,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:224,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepthDelta()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:116,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:117,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:117,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:118,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:119,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:120,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getDepthDelta()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.DirectedEdge:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.DirectedEdge:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.DirectedEdge:109,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getDepthDelta()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 94
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    functionSourceFile: "org.locationtech.jts.geomgraph.DirectedEdge"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.DirectedEdge"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:133,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].mousePressed(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].isPopupTrigger()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].doPopUp(java.awt.event.MouseEvent)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:137,1"
      Dst: "[java.awt.event.MouseEvent].isPopupTrigger()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].doPopUp(java.awt.event.MouseEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].doPopUp(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ComponentEvent].getComponent()"
    - "[java.awt.event.MouseEvent].getX()"
    - "[java.awt.event.MouseEvent].getY()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.ComponentEvent].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.MouseEvent].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.MouseEvent].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[java.awt.Point].<init>(int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    - "[javax.swing.JPopupMenu].show(java.awt.Component,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:69,1"
      Dst: "[java.awt.Point].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:70,1"
      Dst: "[javax.swing.JPopupMenu].show(java.awt.Component,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].mouseReleased(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].isPopupTrigger()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].doPopUp(java.awt.event.MouseEvent)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:142,1"
      Dst: "[java.awt.event.MouseEvent].isPopupTrigger()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].doPopUp(java.awt.event.MouseEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].doPopUp(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ComponentEvent].getComponent()"
    - "[java.awt.event.MouseEvent].getX()"
    - "[java.awt.event.MouseEvent].getY()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.ComponentEvent].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.MouseEvent].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.MouseEvent].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener].doPopUp(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ComponentEvent].getComponent()"
    - "[java.awt.event.MouseEvent].getX()"
    - "[java.awt.event.MouseEvent].getY()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.ComponentEvent].getComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.MouseEvent].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[java.awt.event.MouseEvent].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel$PopupClickListener:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$15].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:354,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$15].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOffset(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:356"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:356,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:357,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:357,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:357,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:357,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOffset(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$15:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$1200(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setOffset(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    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: "org.locationtech.jtstest.function.PreparedGeometryFunctions:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedGeometryFactory"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Polygonal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Lineal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Puntal)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:65"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:57,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].<init>(org.locationtech.jts.geom.Polygonal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:59,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].<init>(org.locationtech.jts.geom.Lineal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:61,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPoint].<init>(org.locationtech.jts.geom.Puntal)"
    - Src: "org.locationtech.jts.geom.prep.PreparedGeometryFactory:66,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].<init>(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].preparedIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:33,1"
      Dst: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:33,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].intersects(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].preparedContains(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].contains(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:38,1"
      Dst: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].contains(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].preparedContainsProperly(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].containsProperly(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:43,1"
      Dst: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].containsProperly(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].preparedCovers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:48,1"
      Dst: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometry].covers(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.PreparedGeometryFunctions].createPG(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.PreparedGeometryFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.prep.PreparedGeometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.PreparedGeometryFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedGeometryFactory].create(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].<init>(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BorderFactory].createLineBorder(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:307,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:292,1"
      Dst: "[javax.swing.BorderFactory].createLineBorder(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:311,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:313,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getToolTipText(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getNameInfo()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:319,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getNameInfo()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getNameInfo()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:57,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:30,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasLength(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasArea(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].area(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasLength(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasArea(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].area(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].setFocusLayer(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].revalidate()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerItemPanel:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:327,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:328,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:329,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:330,1"
      Dst: "[javax.swing.JComponent].revalidate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].isFocusLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].update()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].update(javax.swing.JPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:339,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].update(javax.swing.JPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:340,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:340,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setOpaque(boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerName].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel,org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].create(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[javax.swing.JPanel].<init>()"
    functionUses: 0
    ICount: 99
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:344,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:345,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:345,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:346,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:348,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:349,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:351,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:352,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:354,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$1].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:354,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].isEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:359,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:360,1"
      Dst: "[javax.swing.JComponent].setOpaque(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerName].<init>(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:365,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:365,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:366,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:367,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:368,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:369,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$HighlightMouseListener].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel,org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:369,1"
      Dst: "[java.awt.Component].addMouseListener(java.awt.event.MouseListener)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:370,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel$2].<init>(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:378,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStyleSwatchControl].create(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:380,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:382,1"
      Dst: "[javax.swing.JPanel].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].layerVisAction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[java.awt.Component].repaint()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:398,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:399,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:400,1"
      Dst: "[java.awt.Component].repaint()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:401,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:401,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].access$000(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].layerVisAction()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].layerVisAction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].layerVisAction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[java.awt.Component].repaint()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:398,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:399,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:400,1"
      Dst: "[java.awt.Component].repaint()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:401,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerItemPanel:401,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].access$100(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].access$200(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].access$300()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:51,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:52,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:111,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:113,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:160,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double[][]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:434"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:442"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.shape.CubicBezierCurve"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve$1:162,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryMapper"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.util.GeometryMapper$MapOp"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryMapper:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryMapper:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:83,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:84,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryMapper$MapOp,java.util.List)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:86,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:87,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:90,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geom.util.GeometryMapper:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:67,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:68,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:126,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:128,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:160,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:87,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:88,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:147,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:160,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:111,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:113,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:126,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:128,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:147,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:149,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:160,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve$1].<init>(org.locationtech.jts.shape.CubicBezierCurve)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:162,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryMapper].flatMap(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.util.GeometryMapper$MapOp)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierLine(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 178
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 1
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:179,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:180,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:181,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:181,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:182,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:182,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierRing(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 2
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:186,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:187,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:188,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:189,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierPolygon(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierRing(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 1
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:201"
        BranchSideFuncs:
        - "getNumInteriorRing()"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:200"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:200"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:193,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:193,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierRing(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:195,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:198,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 204
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.CoordinateList"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].addCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    functionUses: 2
    ICount: 21
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:205,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:206,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:209,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].addCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 51
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:232"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:231"
        BranchSideFuncs:
        - "controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:218"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:219"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:218"
        BranchSideFuncs:
        - "getGeometryN(int)"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:229"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:230"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:216,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:217,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:219,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:220,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:227,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:226,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:232,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].addCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateList)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 237
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 1
    ICount: 29
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:243"
        BranchSideFuncs:
        - "cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:238,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:241,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:241,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:244,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:247,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].controlPoints(org.locationtech.jts.geom.Coordinate[],boolean,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].signum(double)"
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 94
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:287"
        BranchSideFuncs:
        - "angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "distance(org.locationtech.jts.geom.Coordinate)"
        - "bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:286"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:287"
        BranchSideFuncs:
        - "angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "distance(org.locationtech.jts.geom.Coordinate)"
        - "bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:321"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:320"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double,double)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:317"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:320"
        BranchSideFuncs:
        - "project(org.locationtech.jts.geom.Coordinate,double,double)"
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:336"
        BranchSideFuncs:
        - "setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:292,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:293,1"
      Dst: "[java.lang.Math].signum(double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:294,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].bisector(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:298,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:300,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:302,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:311,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:321,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:334,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 26
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].setLineEndControlPoints(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 347
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].mirrorControlPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:349,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].mirrorControlPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].aimedControlPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:365,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:366,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:367,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 4
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:78,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].project(org.locationtech.jts.geom.Coordinate,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 2
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:355,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.algorithm.Angle:355,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:356,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jts.algorithm.Angle:356,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].mirrorControlPoint(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 370
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].reflectPointInLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 26
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:380,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:380,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].reflectPointInLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].reflectPointInLine(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 383
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 44
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:391,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].cubicBezier(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double[][],org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 408
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double[][]"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 1
    ICount: 81
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:410,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:414,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].computeIterpolationParameters(int)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double[][]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.CubicBezierCurve:434"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.CubicBezierCurve:442"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].access$000(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.shape.CubicBezierCurve"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierLine(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:39,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierLine(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].access$100(org.locationtech.jts.shape.CubicBezierCurve,org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.shape.CubicBezierCurve"
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierPolygon(org.locationtech.jts.geom.Polygon)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:39,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierPolygon(org.locationtech.jts.geom.Polygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    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: "org.locationtech.jts.geom.CoordinateSequences:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 4
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:32"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:31,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:36,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence:org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 15
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:50"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:49"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:50,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:52,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:71,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].copyCoord(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence:org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.Math].min(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:87,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:105,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:111,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].ensureValidRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:129,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:134,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:136,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].createClosedRing(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:145,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:146,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:147,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].extend(org.locationtech.jts.geom.CoordinateSequenceFactory,org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFactory"
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:156,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:156,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:157,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:158,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].copy(org.locationtech.jts.geom.CoordinateSequence,int,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].isEqual(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.Math].min(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:182"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:180,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:183,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:183,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:186,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:191,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].toString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:223"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:222"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:218"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:224"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:215,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:218,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:219,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:220,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:222,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:225,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:225,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:229,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinate(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:247"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:242,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:243,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:244,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:259,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:259,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:284"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:278,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:284"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:278,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequences].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:296"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:295,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:297,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:356,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:357,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:309,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:309,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:111"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:105,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:111,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 323
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 34
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:326"
        BranchSideFuncs:
        - "copy()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:327"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:326"
        BranchSideFuncs:
        - "copy()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:339"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:329"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:344"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:327,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:330,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:335,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:309,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].isRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:309,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 323
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 34
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:326"
        BranchSideFuncs:
        - "copy()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:327"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:326"
        BranchSideFuncs:
        - "copy()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:339"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:329"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:344"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:327,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:330,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:335,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].indexOf(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:356,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:357,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1].<init>(org.locationtech.jtstest.testbuilder.ScalarFunctionPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].execButton_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel$1:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].execButton_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].execButton_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunctionFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:149,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryFunctionTreePanel].getFunctionFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].execFunction(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].executeScalarFunction()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    - Src: "org.locationtech.jtstest.testbuilder.ScalarFunctionPanel:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].executeScalarFunction()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].resultController()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].executeScalarFunction()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].getScalarFunctionPanel()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getOpName()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultValuePanel()"
    - "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setResult(java.lang.String,java.lang.String,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultValueTab()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getResult()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    - "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getTimer()"
    - "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getTestCasePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].getScalarFunctionPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getOpName()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getResultValuePanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:223,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ResultValuePanel].setResult(java.lang.String,java.lang.String,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultValueTab()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorWait()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].setCursorNormal()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ScalarFunctionPanel].getTimer()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:231,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].getTimeString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].functionInvocation(org.locationtech.jtstest.testbuilder.FunctionPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resultLogEntry(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegreeNonDeleted(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:47,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:47,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:49,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:49,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:50,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:51,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegree(org.locationtech.jts.planargraph.Node,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:58,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:58,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:60,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:60,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:61,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:62,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteAllEdges(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:72,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:72,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:73,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:75,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:76,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:90,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    functionUses: 1
    ICount: 29
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:101"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:100"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:104"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
        - "<init>(org.locationtech.jts.geom.LineString)"
        - "add(org.locationtech.jts.planargraph.Edge)"
        - "setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
        - "getNode(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:100,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:101,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:101,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:108,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:111,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:113,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:114,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:115,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:126"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "add(org.locationtech.jts.planargraph.Node)"
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:120,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:122,1"
      Dst: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:124,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges(org.locationtech.jts.planargraph.Node)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:132,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].nodeIterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:132,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:133,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:134,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].convertMaximalToMinimalEdgeRings(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findIntersectionNodes(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge,long)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCCWEdges(org.locationtech.jts.planargraph.Node,long)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:156"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:155"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:146,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:147,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:148,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findIntersectionNodes(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge,long)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:153,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCCWEdges(org.locationtech.jts.planargraph.Node,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findIntersectionNodes(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegree(org.locationtech.jts.planargraph.Node,long)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:170,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getFromNode()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:171,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegree(org.locationtech.jts.planargraph.Node,long)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:173,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:174,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:177,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:178,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:179,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].convertMaximalToMinimalEdgeRings(java.util.List)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findEdgeRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:193,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:195,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:196,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:197,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].convertMaximalToMinimalEdgeRings(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:200,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:201,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:201,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:202,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:203,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:204,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].isInRing()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:206,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findEdgeRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].findDirEdgesInRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:236"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:235"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:222,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:225,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:225,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:226,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:227,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:228,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:230,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:231,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].findDirEdgesInRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:233,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:258"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:261"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:248,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findLabeledEdgeRings(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:254,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:255,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:255,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:256,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:257,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:259,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:261,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:262,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:266,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:267,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].label(java.util.Collection,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setLabel(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:275,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:275,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:276,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:277,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setLabel(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCWEdges(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:290"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:296"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:299"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:302"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:282,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:287,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:288,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:289,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].isMarked()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:294,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:295,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].computeNextCCWEdges(org.locationtech.jts.planargraph.Node,long)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:342"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:325"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:329"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:329"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:334"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:333"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:347"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:346"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:344"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:311,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:317,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:319,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:320,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:321,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getLabel()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:336,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].setNext(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:344,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 23
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].findEdgeRing(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.polygonize.EdgeRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].build(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:351,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:352,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].build(org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.PolygonizeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].findNodesOfDegree(int)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Stack].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Stack].push(java.lang.Object)"
    - "[java.util.Vector].isEmpty()"
    - "[java.util.Stack].pop()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteAllEdges(org.locationtech.jts.planargraph.Node)"
    - "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegreeNonDeleted(org.locationtech.jts.planargraph.Node)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:377"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:376"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:400"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:399"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:399"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:398"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:387"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:391"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:390"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:369,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].findNodesOfDegree(int)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:370,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:372,1"
      Dst: "[java.util.Stack].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:373,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:373,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:374,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:374,1"
      Dst: "[java.util.Stack].push(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:377,1"
      Dst: "[java.util.Vector].isEmpty()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:378,1"
      Dst: "[java.util.Stack].pop()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:380,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteAllEdges(org.locationtech.jts.planargraph.Node)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:381,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getOutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:381,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdgeStar].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:385,1"
      Dst: "[org.locationtech.jts.planargraph.GraphComponent].setMarked(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:386,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:391,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getEdge()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:392,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeEdge].getLine()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:392,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:394,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getToNode()"
    - Src: "org.locationtech.jts.operation.polygonize.PolygonizeGraph:396,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getDegreeNonDeleted(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].<init>(org.locationtech.jtstest.testbuilder.ui.style.Style[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.style.Style[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.StyleGroup].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup:30"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.StyleGroup:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.Style].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodeVertexIterator].<init>(org.locationtech.jts.noding.SegmentNodeList)"
    functionSourceFile: "org.locationtech.jts.noding.NodeVertexIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentNodeList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.noding.SegmentNodeList].getEdge()"
    - "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].readNextNode()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:329,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:331,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].getEdge()"
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:332,1"
      Dst: "[org.locationtech.jts.noding.SegmentNodeList].iterator()"
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:333,1"
      Dst: "[org.locationtech.jts.noding.NodeVertexIterator].readNextNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    functionSourceFile: "org.locationtech.jts.noding.NodeVertexIterator"
    linkageType: null
    functionLinenumber: 336
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 191
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodeVertexIterator:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:337"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    functionSourceFile: "org.locationtech.jts.noding.NodeVertexIterator"
    linkageType: null
    functionLinenumber: 342
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodeVertexIterator].readNextNode()"
    functionUses: 195
    ICount: 33
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodeVertexIterator:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:350"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:349"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodeVertexIterator:350"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:351"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodeVertexIterator:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:359"
        BranchSideFuncs:
        - "readNextNode()"
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:358"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodeVertexIterator:359"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:361"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:346,1"
      Dst: "[org.locationtech.jts.noding.NodeVertexIterator].readNextNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jts.noding.NodeVertexIterator].readNextNode()"
    functionSourceFile: "org.locationtech.jts.noding.NodeVertexIterator"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 11
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodeVertexIterator:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:370"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:367,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:368,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodeVertexIterator].readNextNode()"
    functionSourceFile: "org.locationtech.jts.noding.NodeVertexIterator"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 11
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodeVertexIterator:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:370"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.NodeVertexIterator:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:367,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:368,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodeVertexIterator].remove()"
    functionSourceFile: "org.locationtech.jts.noding.NodeVertexIterator"
    linkageType: null
    functionLinenumber: 377
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:378,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:378,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.noding.NodeVertexIterator:378,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InfoPanel].jbInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:38,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:32,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:33,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:34,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:36,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:40,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InfoPanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:42,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JScrollPane].getViewport()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:48,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:50,1"
      Dst: "[javax.swing.JTextArea].setWrapStyleWord(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:51,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:52,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:54,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:56,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:56,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:57,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].OLDsetInfo(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:67,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].setInfo(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:73"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:74,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:75,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.InfoPanel].addInfo(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InfoPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.InfoPanel:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InfoPanel:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:80,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:82,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:83,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:88,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.InfoPanel:88,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$5].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:146,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$5].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$200(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$700(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$210(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$800(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel$5:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$5:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$5:150"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.CommandPanel$5:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$5:154"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.CommandPanel$5:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$200(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$700(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:149,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:149,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$210(org.locationtech.jtstest.testbuilder.CommandPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:154,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$800(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$5:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$200(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$700(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$202(org.locationtech.jtstest.testbuilder.CommandPanel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    - "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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$210(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$800(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].setCommandTextNoSave(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].setCommandTextNoSave(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].setCommandTextNoSave(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:333,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$300(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].update()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:61,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:62,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:106,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:107,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:67,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:68,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:69,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:106,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:107,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:74,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:106,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:107,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].orientedDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:112,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:113,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:116,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].compute(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:120,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].computeOrientedDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:126,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:128,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:128,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:131,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].<init>(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:133,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].getMaxPointDistance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].<init>(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    - "[java.util.Arrays].fill(double[],double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:413,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$MatrixStorage].<init>(int,int,double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:415,1"
      Dst: "[java.util.Arrays].fill(double[],double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].get(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].set(int,int,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].isValueSet(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].get(int,int)"
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:424"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:425,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].get(int,int)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix:425,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix].get(int,int)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance$RectMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    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: "org.locationtech.jtstest.function.DiffFunctions:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffVerticesBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.DiffFunctions].diffVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:35,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].diffVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:53,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:55,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:58,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:62,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:63,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffVertices(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:53,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:55,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:58,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:62,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:63,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:66,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:73,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:159,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:162,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:164,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:166,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].normalize()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].reverse()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:204,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:204,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:137,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:138,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:140,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:142,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:143,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:146,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:150,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:153,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:155,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:652,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffSegmentsBoth(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:79,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:82,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:86,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:159,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:162,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:164,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:166,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:137,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:138,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:140,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:142,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:143,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:146,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].duplicateSegments(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.DiffFunctions].dupSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:91,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:92,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].dupSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:159,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:162,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:164,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:166,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].dupSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:110,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:111,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:112,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:112,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:112,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:113,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:114,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:117,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:120,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:150,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:153,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:155,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].singleSegments(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.DiffFunctions].countSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:97,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:98,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:98,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].countSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:99,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:100,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:100,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:100,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:100,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:101,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:101,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:103,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:106,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:159,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:162,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:164,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:166,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].countSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:124,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:125,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:125,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:125,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:127,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:128,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:128,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:130,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:130,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:150,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:153,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:155,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].dupSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:110,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:111,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:112,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:112,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:112,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:113,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:114,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:117,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:120,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].countSegments(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:132"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:130"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:124,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:125,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:125,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:125,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:127,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:128,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:128,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:130,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:130,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].diffSegments(java.util.List,java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>()"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:145"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:137,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:138,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:140,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:141,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:142,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:143,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:146,1"
      Dst: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].toMultiLineString(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:150,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:153,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:155,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.DiffFunctions].extractSegmentsNorm(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.DiffFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.DiffFunctions:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.DiffFunctions:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.DiffFunctions:159,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:160,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:161,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:162,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:164,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:165,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    - Src: "org.locationtech.jtstest.function.DiffFunctions:166,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:108,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].edit(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$100(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$200(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:143"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:119,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$100(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:119,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:123,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:141,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$200(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$100(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:61,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateList:62,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:63,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer].access$200(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer,org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer"
    - "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation:108,1"
      Dst: "[org.locationtech.jts.precision.SimpleGeometryPrecisionReducer$PrecisionReducerCoordinateOperation].<init>(org.locationtech.jts.precision.SimpleGeometryPrecisionReducer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.NodingValidator:30,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkValid()"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections()"
    - "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections()"
    - "[org.locationtech.jts.noding.NodingValidator].checkCollapses()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:44,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections()"
    - Src: "org.locationtech.jts.noding.NodingValidator:45,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections()"
    - Src: "org.locationtech.jts.noding.NodingValidator:46,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkCollapses()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections(org.locationtech.jts.geom.Coordinate,java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:142,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:142,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:144,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:145,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections(org.locationtech.jts.geom.Coordinate,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections(org.locationtech.jts.geom.Coordinate,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:152,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:153,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:156,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:80,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:80,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:81,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:85,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:92,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:96,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.noding.NodingValidator].hasInteriorIntersection(org.locationtech.jts.algorithm.LineIntersector,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[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)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:105,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.NodingValidator:110,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.NodingValidator:111,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.NodingValidator:113,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.noding.NodingValidator:114,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].hasInteriorIntersection(org.locationtech.jts.algorithm.LineIntersector,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.NodingValidator].hasInteriorIntersection(org.locationtech.jts.algorithm.LineIntersector,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:128,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.NodingValidator:129,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.noding.NodingValidator:130,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkCollapses()"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.NodingValidator].checkCollapses(org.locationtech.jts.noding.SegmentString)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:54,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:54,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:55,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:56,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkCollapses(org.locationtech.jts.noding.SegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkCollapses(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodingValidator].checkCollapse(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:62,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:64,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkCollapse(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkCollapse(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:70,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:71,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.NodingValidator:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkCollapses()"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.NodingValidator].checkCollapses(org.locationtech.jts.noding.SegmentString)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:58"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:54,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:54,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:55,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:56,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkCollapses(org.locationtech.jts.noding.SegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkCollapses(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodingValidator].checkCollapse(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:62,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:64,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkCollapse(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkCollapse(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:70,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:71,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.NodingValidator:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.NodingValidator:72,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:87"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:80,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:80,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:81,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:85,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:92,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:96,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkInteriorIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.noding.NodingValidator].hasInteriorIntersection(org.locationtech.jts.algorithm.LineIntersector,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[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)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:105,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.NodingValidator:110,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.NodingValidator:111,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.NodingValidator:113,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.noding.NodingValidator:114,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].hasInteriorIntersection(org.locationtech.jts.algorithm.LineIntersector,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.NodingValidator:116,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.NodingValidator].hasInteriorIntersection(org.locationtech.jts.algorithm.LineIntersector,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:128,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.NodingValidator:129,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.noding.NodingValidator:130,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections(org.locationtech.jts.geom.Coordinate,java.util.Collection)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:148"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:142,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:142,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:143,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:144,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:145,1"
      Dst: "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections(org.locationtech.jts.geom.Coordinate,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.NodingValidator].checkEndPtVertexIntersections(org.locationtech.jts.geom.Coordinate,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.NodingValidator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodingValidator:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.NodingValidator:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.NodingValidator:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodingValidator:152,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.NodingValidator:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.NodingValidator:153,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.NodingValidator:154,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.NodingValidator:156,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.NodingValidator:157,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.Centroid].getCentroid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Centroid].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.Centroid].getCentroid()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:61,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.Centroid:62,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].getCentroid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:81,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.Centroid:66,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.Centroid:83,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.Centroid:96,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.Centroid:96,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:99,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.Centroid:99,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:103,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.Centroid:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.Centroid:108,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.Centroid:108,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:241"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:228,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:241,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Centroid].addShell(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.algorithm.Centroid].addHole(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:161,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.Centroid:161,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.Centroid:161,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addShell(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:162,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.algorithm.Centroid:163,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.algorithm.Centroid:163,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addHole(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addShell(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Centroid].setAreaBasePoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:170,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].setAreaBasePoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:171,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:173,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.algorithm.Centroid:175,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.Centroid].setAreaBasePoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Centroid].centroid3(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Centroid].area2(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:189,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].centroid3(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:190,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].area2(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Centroid].centroid3(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].area2(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addHole(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:180,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:182,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.algorithm.Centroid:184,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].getCentroid()"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:126,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.Centroid:127,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.Centroid].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:81,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.Centroid:66,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.Centroid:83,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:104"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.Centroid:96,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.Centroid:96,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:99,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.Centroid:99,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:103,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.Centroid:107,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.Centroid:108,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.Centroid:108,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.Centroid].getCentroid()"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:126,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.Centroid:127,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.algorithm.Centroid].setAreaBasePoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].add(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.algorithm.Centroid].addShell(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.algorithm.Centroid].addHole(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:161,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.algorithm.Centroid:161,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.algorithm.Centroid:161,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addShell(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:162,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.algorithm.Centroid:163,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.algorithm.Centroid:163,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addHole(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addShell(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Centroid].setAreaBasePoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:170,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].setAreaBasePoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:171,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:173,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.algorithm.Centroid:175,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addHole(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:180,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.Centroid:182,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.algorithm.Centroid:184,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addTriangle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Centroid].centroid3(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Centroid].area2(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:189,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].centroid3(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:190,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].area2(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.Centroid].centroid3(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].area2(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addLineSegments(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Centroid:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:241"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Centroid:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Centroid:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Centroid:228,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Centroid:241,1"
      Dst: "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.algorithm.Centroid].addPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Centroid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].<init>(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].construct()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].computeResult()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:139,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].computeResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].computeResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getFunction()"
    - "[org.locationtech.jts.util.Stopwatch].<init>()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$000()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getArgs()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - "[org.locationtech.jts.util.Stopwatch].stop()"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:144,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:149,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$000()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:152,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getArgs()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:151,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:154,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:159,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getFunction()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.geomfunction.GeometryFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].<init>()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.util.Stopwatch].start()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.Stopwatch:28,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$000()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].model()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getArgs()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Stopwatch].stop()"
    functionSourceFile: "org.locationtech.jts.util.Stopwatch"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Stopwatch:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Stopwatch:44"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Stopwatch:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Stopwatch:41,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].updateTotalTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].computeResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getFunction()"
    - "[org.locationtech.jts.util.Stopwatch].<init>()"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$000()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getArgs()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - "[org.locationtech.jts.util.Stopwatch].stop()"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:144,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getFunction()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:149,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$000()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:151,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:152,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getArgs()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:151,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:154,1"
      Dst: "[org.locationtech.jts.util.Stopwatch].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:159,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController$1].finished()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$100(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$200(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].getValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].addTestCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$300(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$402(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.testbuilder.ui.SwingWorker)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$100(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$200(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].getValue()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:170,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:170,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:170,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:171,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:171,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].addTestCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:173,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$300(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController$1:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$402(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.testbuilder.ui.SwingWorker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$100(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].stopFunctionMonitor()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].stopFunctionMonitor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$200(org.locationtech.jtstest.testbuilder.controller.ResultController)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].resetUI()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].resetUI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].getSignature()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:32"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:31"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:36"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:35"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:32,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation].toString(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:34,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:36,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    - Src: "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation:37,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].addTestCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].addCase(org.locationtech.jts.geom.Geometry[],java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].updateTestCases()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showGeomsTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$300(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    - "org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation"
    - "java.lang.Object"
    - "org.locationtech.jts.util.Stopwatch"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.ResultController:34,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.ResultController].updateResult(org.locationtech.jtstest.geomfunction.GeometryFunctionInvocation,java.lang.Object,org.locationtech.jts.util.Stopwatch)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.ResultController].access$402(org.locationtech.jtstest.testbuilder.controller.ResultController,org.locationtech.jtstest.testbuilder.ui.SwingWorker)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.ResultController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.SwingWorker"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.controller.ResultController"
    - "org.locationtech.jtstest.testbuilder.ui.SwingWorker"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].<init>(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].getBaseline()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:51"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:45,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:46,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:48,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].isOnBoundary(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:58,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:60,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.SegmentClipper].clip(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].isOnBoundary(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:65,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline].isOnBoundary(org.locationtech.jts.geom.Envelope,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:73"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:76"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:70,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LineLabelBaseline:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].<init>(boolean,boolean,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:335,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:332,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:348,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].findIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:355"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:354"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:355"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:358"
        BranchSideFuncs:
        - "findIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:359,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].findIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:363,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:363,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].findIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 369
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.NodedSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.noding.SegmentString].isClosed()"
    functionUses: 1
    ICount: 69
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:380"
        BranchSideFuncs:
        - "isInteriorIntersection()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:389"
        BranchSideFuncs:
        - "getIntersectionNum()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:389"
        BranchSideFuncs:
        - "getIntersectionNum()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:404"
        BranchSideFuncs:
        - "isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:404"
        BranchSideFuncs:
        - "isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:404"
        BranchSideFuncs:
        - "isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:409"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:417"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:422"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:422"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:421"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:370,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:375,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:376,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:381,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:390,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:397,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:405,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 33
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].intersectionVertexIndex(org.locationtech.jts.algorithm.LineIntersector,int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:445"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:444"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:444"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:436,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].intersectionVertexIndex(org.locationtech.jts.algorithm.LineIntersector,int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:445,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].intersectionVertexIndex(org.locationtech.jts.algorithm.LineIntersector,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 457
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getEndpoint(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:457"
        BranchSideFuncs:
        - "getEndpoint(int,int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "getIntersection(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:458,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:459,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getEndpoint(int,int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:460,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].findIntersection(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 369
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.NodedSegmentString].isClosed()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.noding.SegmentString].isClosed()"
    functionUses: 1
    ICount: 69
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:380"
        BranchSideFuncs:
        - "isInteriorIntersection()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:389"
        BranchSideFuncs:
        - "getIntersectionNum()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:390"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:390"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:389"
        BranchSideFuncs:
        - "getIntersectionNum()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:404"
        BranchSideFuncs:
        - "isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:404"
        BranchSideFuncs:
        - "isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:404"
        BranchSideFuncs:
        - "isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:409"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:417"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:422"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:422"
        BranchSideFuncs:
        - "isClosed()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:421"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:418"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:420"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:421"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:370,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:375,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:376,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:381,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:390,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:397,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:405,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:419,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 33
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isIntersectionEndpoint(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.algorithm.LineIntersector,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].intersectionVertexIndex(org.locationtech.jts.algorithm.LineIntersector,int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:445"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:444"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:442"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:441"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:444"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:436,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].intersectionVertexIndex(org.locationtech.jts.algorithm.LineIntersector,int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:445,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].intersectionVertexIndex(org.locationtech.jts.algorithm.LineIntersector,int)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 457
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getEndpoint(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:460"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:457"
        BranchSideFuncs:
        - "getEndpoint(int,int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
        - "getIntersection(int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:458,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:459,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getEndpoint(int,int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:460,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.List].size()"
    functionUses: 4
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:465"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:466"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:465"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:466"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:465"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder:466,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].<init>(org.locationtech.jts.precision.SimpleMinimumClearance,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:124,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkVertexDistance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkSegmentDistance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:136"
        BranchSideFuncs:
        - "checkSegmentDistance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:130,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:130,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkVertexDistance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:134,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkSegmentDistance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkVertexDistance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:144"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:140,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:142,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:39,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkSegmentDistance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:149"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:153"
        BranchSideFuncs:
        - "access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:150,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:152,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Distance"
    linkageType: null
    functionLinenumber: 150
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 23
    ICount: 74
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Distance:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Distance:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Distance:187"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.algorithm.Distance:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Distance:152,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.algorithm.Distance:189,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.precision.SimpleMinimumClearance"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance:39,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].updateClearance(double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkVertexDistance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:144"
        BranchSideFuncs:
        - "access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:140,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:142,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$100(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].checkSegmentDistance(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance].access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:149"
        BranchSideFuncs:
        - "pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:153"
        BranchSideFuncs:
        - "access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:148,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:150,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter:152,1"
      Dst: "[org.locationtech.jts.precision.SimpleMinimumClearance].access$200(org.locationtech.jts.precision.SimpleMinimumClearance,double,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isDone()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPopupMenu].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].initUI()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:28,1"
      Dst: "[javax.swing.JPopupMenu].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].initUI()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].initUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JMenuItem].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$1].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[javax.swing.JPopupMenu].add(javax.swing.JMenuItem)"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$2].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:34,1"
      Dst: "[javax.swing.JMenuItem].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:35,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$1].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:35,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:41,1"
      Dst: "[javax.swing.JPopupMenu].add(javax.swing.JMenuItem)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$2].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].show(java.awt.Component,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[java.awt.Point].<init>(int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    - "[javax.swing.JPopupMenu].show(java.awt.Component,int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:69,1"
      Dst: "[java.awt.Point].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:69,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu:70,1"
      Dst: "[javax.swing.JPopupMenu].show(java.awt.Component,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].<init>()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:30,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].size()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.util.Arrays].copyOf(int[],int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.IntArrayList:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.IntArrayList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.IntArrayList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:60,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.util.IntArrayList:62,1"
      Dst: "[java.util.Arrays].copyOf(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.IntArrayList].add(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:70,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.IntArrayList].addAll(int[])"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.IntArrayList:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.IntArrayList:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.IntArrayList:81"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.IntArrayList:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.IntArrayList:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.IntArrayList:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:83,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    - Src: "org.locationtech.jts.util.IntArrayList:84,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.IntArrayList].ensureCapacity(int)"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.util.Arrays].copyOf(int[],int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.IntArrayList:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.IntArrayList:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.IntArrayList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:60,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.util.IntArrayList:62,1"
      Dst: "[java.util.Arrays].copyOf(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionSourceFile: "org.locationtech.jts.util.IntArrayList"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.IntArrayList:96,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:70"
        BranchSideFuncs:
        - "countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "isOnSegment()"
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:69"
        BranchSideFuncs:
        - "getLocation()"
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:61"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:60"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:61,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:66,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:67,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:68,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].locatePointInRing(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:83,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:85,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:89,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:94,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:95,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:96,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].countSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 98
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:142"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:160"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:161,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 25
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].getCount()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].isOnSegment()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 194
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:216"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].isPointInPolygon()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RayCrossingCounter:232,1"
      Dst: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.RayCrossingCounter].getLocation()"
    functionSourceFile: "org.locationtech.jts.algorithm.RayCrossingCounter"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:213"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.RayCrossingCounter:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.RayCrossingCounter:216"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].<init>(org.locationtech.jts.geomgraph.Edge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineSegment:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineSegment:30,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMinX()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineSegment:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineSegment:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineSegment:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineSegment:40"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineSegment:47,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    functionUses: 3
    ICount: 60
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:144"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:144"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:162"
        BranchSideFuncs:
        - "setIsolated(boolean)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:161"
        BranchSideFuncs:
        - "isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:180"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:183"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:182"
        BranchSideFuncs:
        - "isProper()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs:
        - "copy()"
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:145,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:150,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:156,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:158,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:177,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:180,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:184,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:184,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation].<init>(org.locationtech.jts.geom.LineString,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:40,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$CoordinateOperation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation].edit(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].clone()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:55"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryVertexInserter$InsertVertexOperation:54,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].clone()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 398
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:399,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.geom.Coordinate:403,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jtstest.function.LinearReferencingFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.LinearReferencingFunctions"
    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: "org.locationtech.jtstest.function.LinearReferencingFunctions:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.LinearReferencingFunctions].extractPoint(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.LinearReferencingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].extractPoint(double)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:26,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:27,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].extractPoint(double)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].extractPoint(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:56,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:57,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:44,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:45,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:264,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:265,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:268,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.LinearReferencingFunctions].extractLine(org.locationtech.jts.geom.Geometry,double,double)"
    functionSourceFile: "org.locationtech.jtstest.function.LinearReferencingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:36,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:37,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].clampIndex(double)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double,boolean)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthIndexedLine:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:95,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].clampIndex(double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:99,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double,boolean)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:102,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:103,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.LinearReferencingFunctions].project(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LinearReferencingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].project(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].extractPoint(double)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.LinearReferencingFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.LinearReferencingFunctions:52"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.LinearReferencingFunctions:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:41,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:46,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].project(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:48,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:52,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:53,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].extractPoint(double)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:54,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].project(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:196,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:31,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:32,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:55,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOfFromStart(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LengthIndexOfPoint].segmentNearestMeasure(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthIndexOfPoint:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthIndexOfPoint:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:112"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthIndexOfPoint:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthIndexOfPoint:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:97,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:98,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:99,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:100,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:101,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:102,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:103,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:104,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexOfPoint].segmentNearestMeasure(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:110,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:112,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 15
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:58,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:64,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:120,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:149,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:177,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:189,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineSegment].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 256
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:257,1"
      Dst: "[org.locationtech.jts.algorithm.Distance].pointToSegment(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexOfPoint].segmentNearestMeasure(org.locationtech.jts.geom.LineSegment,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthIndexOfPoint:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthIndexOfPoint:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexOfPoint:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:121,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LengthIndexOfPoint:125,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineSegment].projectionFactor(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 4
    ICount: 40
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:378"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geom.LineSegment:377"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.geom.LineSegment:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:389"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:377,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineSegment].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:118,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:130,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:133,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].extractLine(double,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].clampIndex(double)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double,boolean)"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthIndexedLine:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthIndexedLine:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:95,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].clampIndex(double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:99,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double,boolean)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:102,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].locationOf(double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:103,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].extractPoint(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:56,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:57,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.LinearReferencingFunctions].projectIndex(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.LinearReferencingFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[org.locationtech.jts.linearref.LengthIndexedLine].project(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:59,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:60,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jtstest.function.LinearReferencingFunctions:60,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexedLine].project(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthIndexedLine].project(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthIndexedLine:196,1"
      Dst: "[org.locationtech.jts.linearref.LengthIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:96,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:97,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:107,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:108,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:124,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:170,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:171,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:172,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:124,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:136,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].setFindAllLocations(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimple()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:156,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocation()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:170,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:171,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:172,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].getNonSimpleLocations()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:182,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].compute()"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:188"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:188,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:189,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimplePolygonal(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleGeometryCollection(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:198"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:194,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:196,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:198,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:199,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimplePolygonal(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:200,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleGeometryCollection(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleMultiPoint(org.locationtech.jts.geom.MultiPoint)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[java.util.HashSet].<init>()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:219"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:207,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:209,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:210,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:211,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:212,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:213,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:214,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:220,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimplePolygonal(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:238"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:236,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:237,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:237,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:237,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:238,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleGeometryCollection(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:258,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:259,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:260,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].computeSimple(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].isSimpleLinearGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].<init>(boolean,boolean,java.util.List)"
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].hasIntersection()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:272,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:273,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:274,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].<init>(boolean,boolean,java.util.List)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:275,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:276,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:277,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:278,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].hasIntersection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp].trimRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:285,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:286,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:287,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:288,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:288,1"
      Dst: "[org.locationtech.jts.operation.valid.IsSimpleOp].trimRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:290,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:291,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.IsSimpleOp].trimRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.valid.IsSimpleOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateArrays].extract(org.locationtech.jts.geom.Coordinate[],int,int)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:310"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.IsSimpleOp:319"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.IsSimpleOp:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:302,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.valid.IsSimpleOp:322,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].extract(org.locationtech.jts.geom.Coordinate[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20:244,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeMove()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20:246,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20:246,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeMove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].modeMove()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getInstance()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.MoveTool].getInstance()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].union(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.PartitionedUnion].<init>(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.PartitionedUnion].union()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:45,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:46,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:47,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.PolygonExtracter"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.PolygonExtracter:59,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.PartitionedUnion].toArray(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:54,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion].toArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].toArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    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: "org.locationtech.jts.operation.union.PartitionedUnion:58,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.PartitionedUnion$1].<init>(org.locationtech.jts.operation.union.PartitionedUnion)"
    - "[org.locationtech.jts.operation.union.SpatialPartition].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.SpatialPartition].getCount()"
    - "[org.locationtech.jts.operation.union.PartitionedUnion].union(org.locationtech.jts.operation.union.SpatialPartition,int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:66,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion$1].<init>(org.locationtech.jts.operation.union.PartitionedUnion)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:66,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:80,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:81,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].getCount()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:83,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion].union(org.locationtech.jts.operation.union.SpatialPartition,int)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:84,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:86,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion$1].<init>(org.locationtech.jts.operation.union.PartitionedUnion)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.PartitionedUnion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion$1:66,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.SpatialPartition].build(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:51,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].build(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition].build(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SpatialPartition].createIndex(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.operation.union.DisjointSets].<init>(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.union.SpatialPartition$1].<init>(org.locationtech.jts.operation.union.SpatialPartition,int,org.locationtech.jts.operation.union.DisjointSets,org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - "[org.locationtech.jts.operation.union.DisjointSets].subsets()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SpatialPartition:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SpatialPartition:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:93,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].createIndex(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:95,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].<init>(int)"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:102,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:102,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition$1].<init>(org.locationtech.jts.operation.union.SpatialPartition,int,org.locationtech.jts.operation.union.DisjointSets,org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:102,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:122,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].subsets()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition].createIndex(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.index.strtree.STRtree"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[java.lang.Integer].<init>(int)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.SpatialPartition:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.SpatialPartition:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:126,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:128,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:128,1"
      Dst: "[java.lang.Integer].<init>(int)"
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:128,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 173
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:174,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 221
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.strtree.STRtree:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:223"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.strtree.STRtree:222"
        BranchSideFuncs:
        - "insert(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:222,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.index.strtree.STRtree:223,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].insert(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].<init>(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIndex(int)"
    - "[org.locationtech.jts.operation.union.DisjointSets].arrayOfValue(int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:48,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIndex(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:49,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfValue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfIndex(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:167"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].arrayOfValue(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:183"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition$1].<init>(org.locationtech.jts.operation.union.SpatialPartition,int,org.locationtech.jts.operation.union.DisjointSets,org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.operation.union.SpatialPartition"
    - "int"
    - "org.locationtech.jts.operation.union.DisjointSets"
    - "org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition$1:102,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:241,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].query(java.lang.Object,org.locationtech.jts.index.ItemVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets].subsets()"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - "[org.locationtech.jts.operation.union.DisjointSets].itemsSortedBySubset()"
    - "[java.lang.Integer].intValue()"
    - "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    - "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets,java.lang.Integer[],int[],int[])"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets:120,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:124,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].itemsSortedBySubset()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:129,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:129,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets].findRoot(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets:142,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].<init>(org.locationtech.jts.operation.union.DisjointSets,java.lang.Integer[],int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition].getCount()"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getCount()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:59,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getCount()"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].union(org.locationtech.jts.operation.union.SpatialPartition,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.union.SpatialPartition"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SpatialPartition].getSize(int)"
    - "[org.locationtech.jts.operation.union.SpatialPartition].getGeometry(int,int)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:91,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].getSize(int)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:92,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].getGeometry(int,int)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:95,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:97,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:99,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition].getSize(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getSize(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:69,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getSize(int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    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: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$Subsets:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:230,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition].getGeometry(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SpatialPartition].getItem(int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:89,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].getItem(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.SpatialPartition].getItem(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.SpatialPartition"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getItem(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.SpatialPartition:79,1"
      Dst: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getItem(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.DisjointSets$Subsets].getItem(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.DisjointSets$Subsets"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "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].intValue()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$Subsets:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:246"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:245"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.DisjointSets$Subsets:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.DisjointSets$Subsets:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:244,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.union.DisjointSets$Subsets:250,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:81,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion:82,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.union.PartitionedUnion].toArray(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:54,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion].toArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].toArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    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: "org.locationtech.jts.operation.union.PartitionedUnion:58,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].union()"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.PartitionedUnion$1].<init>(org.locationtech.jts.operation.union.PartitionedUnion)"
    - "[org.locationtech.jts.operation.union.SpatialPartition].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.union.SpatialPartition].getCount()"
    - "[org.locationtech.jts.operation.union.PartitionedUnion].union(org.locationtech.jts.operation.union.SpatialPartition,int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:65"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:66,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion$1].<init>(org.locationtech.jts.operation.union.PartitionedUnion)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:66,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.operation.union.SpatialPartition$EquivalenceRelation)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:79,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:80,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:81,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].getCount()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:83,1"
      Dst: "[org.locationtech.jts.operation.union.PartitionedUnion].union(org.locationtech.jts.operation.union.SpatialPartition,int)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:84,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:86,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].union(org.locationtech.jts.operation.union.SpatialPartition,int)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.union.SpatialPartition"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.union.SpatialPartition].getSize(int)"
    - "[org.locationtech.jts.operation.union.SpatialPartition].getGeometry(int,int)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.union.PartitionedUnion:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.union.PartitionedUnion:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:91,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].getSize(int)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:92,1"
      Dst: "[org.locationtech.jts.operation.union.SpatialPartition].getGeometry(int,int)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:95,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:97,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.union.PartitionedUnion:99,1"
      Dst: "[org.locationtech.jts.operation.union.CascadedPolygonUnion].union(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.PartitionedUnion].access$000(org.locationtech.jts.operation.union.PartitionedUnion)"
    functionSourceFile: "org.locationtech.jts.operation.union.PartitionedUnion"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.union.PartitionedUnion"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap,int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$Segment"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineSegment].normalize()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$Segment:159,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$Segment:162,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$Segment].markBoundary()"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$Segment"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].setBoundarySegment(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$Segment:166,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].setBoundarySegment(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].densify(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.densify.Densifier].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier].setDistanceTolerance(double)"
    - "[org.locationtech.jts.densify.Densifier].getResultGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:54,1"
      Dst: "[org.locationtech.jts.densify.Densifier].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.densify.Densifier:55,1"
      Dst: "[org.locationtech.jts.densify.Densifier].setDistanceTolerance(double)"
    - Src: "org.locationtech.jts.densify.Densifier:56,1"
      Dst: "[org.locationtech.jts.densify.Densifier].getResultGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].densifyPoints(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.geom.LineSegment].getLength()"
    - "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setZ(double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setZ(double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 66
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:94"
        BranchSideFuncs:
        - "getLength()"
      - BranchSide: "org.locationtech.jts.densify.Densifier:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.densify.Densifier:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.densify.Densifier:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.densify.Densifier:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:68"
        BranchSideFuncs:
        - "pointAlong(double)"
      - BranchSide: "org.locationtech.jts.densify.Densifier:67"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "org.locationtech.jts.densify.Densifier:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:null"
        BranchSideFuncs:
        - "setZ(double)"
    - Branch String: "org.locationtech.jts.densify.Densifier:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:null"
        BranchSideFuncs:
        - "setZ(double)"
    - Branch String: "org.locationtech.jts.densify.Densifier:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:96"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.densify.Densifier:95"
        BranchSideFuncs:
        - "toCoordinateArray()"
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:68,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.densify.Densifier:69,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.densify.Densifier:73,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.densify.Densifier:74,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getLength()"
    - Src: "org.locationtech.jts.densify.Densifier:81,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.densify.Densifier:85,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlong(double)"
    - Src: "org.locationtech.jts.densify.Densifier:86,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.densify.Densifier:87,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jts.densify.Densifier:89,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.densify.Densifier:96,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jts.densify.Densifier].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:113,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].setDistanceTolerance(double)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.densify.Densifier:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.densify.Densifier:128"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.densify.Densifier:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier: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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.densify.Densifier].setValidate(boolean)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].getResultGeometry()"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].<init>(double,boolean)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:146,1"
      Dst: "[org.locationtech.jts.densify.Densifier$DensifyTransformer].<init>(double,boolean)"
    - Src: "org.locationtech.jts.densify.Densifier:146,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.densify.Densifier].access$000(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.densify.Densifier"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.densify.Densifier].densifyPoints(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.densify.Densifier:44,1"
      Dst: "[org.locationtech.jts.densify.Densifier].densifyPoints(org.locationtech.jts.geom.Coordinate[],double,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:45,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:49,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:107"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:103,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:104,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:105,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:105,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].addNodes(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 119
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:124"
        BranchSideFuncs:
        - "hasNext()"
        - "setToNode()"
        - "iterator()"
        - "next()"
        - "add(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:120,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:120,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:120,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:121,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:122,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].add(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 7
    returnType: "org.locationtech.jts.noding.snapround.HotPixel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].round(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex].find(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    - "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:153"
        BranchSideFuncs:
        - "setToNode()"
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:152"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
        - "<init>(org.locationtech.jts.geom.Coordinate,double)"
        - "getCoordinate()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:135,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].round(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:137,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixelIndex].find(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:144,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].setToNode()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:153,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:154,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:154,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 158
    functionDepth: 4
    returnType: "org.locationtech.jts.noding.snapround.HotPixel"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.HotPixelIndex:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.HotPixelIndex:161"
        BranchSideFuncs:
        - "getData()"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:159,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:162,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].round(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:166,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:167,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixelIndex].query(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixelIndex"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.index.kdtree.KdNodeVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:181,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:184,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.noding.snapround.HotPixelIndex:185,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.kdtree.KdNodeVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor:754,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor:755,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdge[])"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor:758,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor].getTriangleEdges()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$1)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor:754,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision$TriangleEdgesListVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Dimension].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Dimension"
    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: "org.locationtech.jts.geom.Dimension:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    functionSourceFile: "org.locationtech.jts.geom.Dimension"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "char"
    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: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Dimension:109,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    functionSourceFile: "org.locationtech.jts.geom.Dimension"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].toUpperCase(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)"
    functionUses: 1
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Dimension:123,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Dimension:137,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$6].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel,javax.swing.JCheckBox)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    - "javax.swing.JCheckBox"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$6:289,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$6].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingInput(boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$6:291,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$6:291,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$6:291,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingInput(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingInput(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.LayerList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.LayerList:64,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:187,1"
      Dst: "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:190,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    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: "org.locationtech.jtstest.function.CreateShapeFunctions:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyphSerif(org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:42,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:42,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.awt.Font"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:71,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:73,1"
      Dst: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.awt.FontGlyphReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.awt.Font"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].getSize()"
    - "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,double,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.FontGlyphReader:96,1"
      Dst: "[java.awt.Font].getSize()"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:97,1"
      Dst: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,double,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,double,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.awt.FontGlyphReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.awt.Font"
    - "double"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toCharArray()"
    - "[java.awt.font.FontRenderContext].<init>(java.awt.geom.AffineTransform,boolean,boolean)"
    - "[java.awt.Font].createGlyphVector(java.awt.font.FontRenderContext,char[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.awt.font.GlyphVector].getNumGlyphs()"
    - "[java.awt.font.GlyphVector].getGlyphOutline(int)"
    - "[org.locationtech.jts.awt.ShapeReader].read(java.awt.Shape,double,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.FontGlyphReader:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.FontGlyphReader:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.FontGlyphReader:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.FontGlyphReader:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.FontGlyphReader:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.FontGlyphReader:111,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:112,1"
      Dst: "[java.awt.font.FontRenderContext].<init>(java.awt.geom.AffineTransform,boolean,boolean)"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:113,1"
      Dst: "[java.awt.Font].createGlyphVector(java.awt.font.FontRenderContext,char[])"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:114,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:115,1"
      Dst: "[java.awt.font.GlyphVector].getNumGlyphs()"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:116,1"
      Dst: "[java.awt.font.GlyphVector].getGlyphOutline(int)"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:116,1"
      Dst: "[org.locationtech.jts.awt.ShapeReader].read(java.awt.Shape,double,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:117,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.awt.FontGlyphReader:121,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.awt.ShapeReader].read(java.awt.Shape,double,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "java.awt.Shape"
    - "double"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Shape].getPathIterator(java.awt.geom.AffineTransform,double)"
    - "[org.locationtech.jts.awt.ShapeReader].read(java.awt.geom.PathIterator,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeReader:72,1"
      Dst: "[java.awt.Shape].getPathIterator(java.awt.geom.AffineTransform,double)"
    - Src: "org.locationtech.jts.awt.ShapeReader:73,1"
      Dst: "[org.locationtech.jts.awt.ShapeReader].read(java.awt.geom.PathIterator,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeReader].read(java.awt.geom.PathIterator,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.awt.geom.PathIterator"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.ShapeReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.awt.ShapeReader].read(java.awt.geom.PathIterator)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeReader:58,1"
      Dst: "[org.locationtech.jts.awt.ShapeReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.awt.ShapeReader:59,1"
      Dst: "[org.locationtech.jts.awt.ShapeReader].read(java.awt.geom.PathIterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeReader:78,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.awt.ShapeReader].read(java.awt.geom.PathIterator)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.awt.geom.PathIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.awt.ShapeReader].toCoordinates(java.awt.geom.PathIterator)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.awt.ShapeReader].isHole(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeReader:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeReader:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeReader:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeReader:90,1"
      Dst: "[org.locationtech.jts.awt.ShapeReader].toCoordinates(java.awt.geom.PathIterator)"
    - Src: "org.locationtech.jts.awt.ShapeReader:92,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeReader:94,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.awt.ShapeReader:97,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.awt.ShapeReader:98,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.awt.ShapeReader:103,1"
      Dst: "[org.locationtech.jts.awt.ShapeReader].isHole(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.awt.ShapeReader:106,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.awt.ShapeReader:109,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    - Src: "org.locationtech.jts.awt.ShapeReader:110,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.awt.ShapeReader:112,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.awt.ShapeReader].toCoordinates(java.awt.geom.PathIterator)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.awt.geom.PathIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.awt.geom.PathIterator].isDone()"
    - "[org.locationtech.jts.awt.ShapeReader].nextCoordinateArray(java.awt.geom.PathIterator)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeReader:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeReader:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeReader:130,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeReader:131,1"
      Dst: "[java.awt.geom.PathIterator].isDone()"
    - Src: "org.locationtech.jts.awt.ShapeReader:132,1"
      Dst: "[org.locationtech.jts.awt.ShapeReader].nextCoordinateArray(java.awt.geom.PathIterator)"
    - Src: "org.locationtech.jts.awt.ShapeReader:135,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.awt.ShapeReader].nextCoordinateArray(java.awt.geom.PathIterator)"
    functionSourceFile: "org.locationtech.jts.awt.ShapeReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "java.awt.geom.PathIterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.PathIterator].isDone()"
    - "[java.awt.geom.PathIterator].currentSegment(double[])"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.awt.geom.PathIterator].next()"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.awt.ShapeReader:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:174"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeReader:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:153"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.awt.ShapeReader:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.awt.ShapeReader:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeReader:145,1"
      Dst: "[java.awt.geom.PathIterator].isDone()"
    - Src: "org.locationtech.jts.awt.ShapeReader:146,1"
      Dst: "[java.awt.geom.PathIterator].currentSegment(double[])"
    - Src: "org.locationtech.jts.awt.ShapeReader:154,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.awt.ShapeReader:155,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.awt.ShapeReader:155,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.awt.ShapeReader:156,1"
      Dst: "[java.awt.geom.PathIterator].next()"
    - Src: "org.locationtech.jts.awt.ShapeReader:164,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jts.awt.ShapeReader:169,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.awt.ShapeReader:174,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.awt.ShapeReader].isHole(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.awt.ShapeReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.awt.ShapeReader:117,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.geom.impl.CoordinateArraySequence].<init>(org.locationtech.jts.geom.Coordinate[],int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:129,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:135,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:136,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformationFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.AffineTransformationFactory:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationFactory:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.AffineTransformationFactory:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:156,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:158,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:160,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:165,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:169,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:171,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:172,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformationFactory:173,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Angle].angleBetweenOriented(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 171
    functionDepth: 1
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Angle:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:172,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:254,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:255,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToIdentity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:236,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].<init>()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:237,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].setToTranslation(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotate(double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:795,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:795,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].scale(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].scaleInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:862,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].translate(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].translationInstance(double,double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:892,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].compose(org.locationtech.jts.geom.util.AffineTransformation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:986,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:987,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyphSerifPointSize(org.locationtech.jts.geom.Geometry,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:49,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:49,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.awt.Font"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:71,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:73,1"
      Dst: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:56,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:56,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.awt.Font"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:71,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:73,1"
      Dst: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyphSansSerif(org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:61,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:61,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.awt.Font"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:71,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:73,1"
      Dst: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyphMonospaced(org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:66,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:66,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.awt.Font"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:71,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:73,1"
      Dst: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].fontGlyph(org.locationtech.jts.geom.Geometry,java.lang.String,java.awt.Font)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.String"
    - "java.awt.Font"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:70,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:71,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:73,1"
      Dst: "[org.locationtech.jts.awt.FontGlyphReader].read(java.lang.String,java.awt.Font,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:78,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:79,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:82,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformationFactory].createFromBaseLines(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:83,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].grid(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:90,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:91,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:93,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:100,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:101,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:103,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:107,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:108,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:113,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:113,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:116,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:221"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:221"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:225"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:235"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:217,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:221,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:222,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Object].getClass()"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 60
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:569"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:556"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:559"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:559"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:562"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:561"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:562"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:564"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:563"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:570"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:572"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:574"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:573"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:573"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs:
        - "createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
        - "toGeometryArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:579"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:578"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:581"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:592"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:582"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:585"
        BranchSideFuncs:
        - "toPolygonArray(java.util.Collection)"
        - "createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:584"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:585"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:588"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "toLineStringArray(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:587"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:588"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:591"
        BranchSideFuncs:
        - "toPointArray(java.util.Collection)"
        - "createMultiPoint(org.locationtech.jts.geom.Point[])"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:590"
        BranchSideFuncs:
        - "shouldNeverReachHere(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:553,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:554,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:555,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:571,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:574,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:580,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:583,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLineStringArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:586,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPointArray(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:589,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:591,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 26
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].gridPoints(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:121,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:122,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:124,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:127,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:128,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:130,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:134,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:137,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:137,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:140,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:140,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle3(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:145,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:170,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:171,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:175,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:176,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:61,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:61,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:47,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].<init>()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:73,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].<init>()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    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: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:392,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:78,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:429,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:430,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:431,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:431,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:431,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:432,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:432,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getMinSize()"
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    - "[java.lang.Math].pow(double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].coordTrans(double,double,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].rotate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:261,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getMinSize()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:262,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:264,1"
      Dst: "[java.lang.Math].pow(double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:282,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].coordTrans(double,double,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:294,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:297,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:298,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].rotate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getMinSize()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:419,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:406,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].coordTrans(double,double,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:389,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:382,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:383,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].rotate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:140,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:139,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:141,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.util.AffineTransformation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.util.AffineTransformation"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.AffineTransformation:157,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].squircle(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:150,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:170,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:171,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:175,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:176,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle5(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:155,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:170,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:171,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:175,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:176,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercirclePoint5(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:160,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:170,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:171,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:175,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:176,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].supercircle(org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:170,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:171,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:173,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:175,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:176,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createSupercircle(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].ellipse(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].createCircle()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:181,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:182,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:184,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:186,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:187,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createCircle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:61,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:61,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:78,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].createCircle()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].createEllipse()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:202,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createEllipse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].createEllipse()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].rotate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:215,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getEnvelope()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:216,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:217,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:219,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:220,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:226,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:227,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:228,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:230,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:232,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:233,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:234,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].rotate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:439"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:438"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:442"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:437,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.Angle].cosSnap(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 340
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:343"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:341,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:342,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.Angle].sinSnap(double)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 328
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].sin(double)"
    - "[java.lang.Math].abs(double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Angle:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Angle:331"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Angle:330"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:329,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.algorithm.Angle:330,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:382,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:383,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].rotate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:140,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getCentre()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:139,1"
      Dst: "[org.locationtech.jts.geom.util.AffineTransformation].rotationInstance(double,double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:141,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].ellipseRotate(org.locationtech.jts.geom.Geometry,int,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setRotation(double)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].createCircle()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:194,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:195,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:196,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setRotation(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:198,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:198,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:200,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:201,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createCircle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:61,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:61,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setRotation(double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:78,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setEnvelope(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].createCircle()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].createEllipse()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:202,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].createEllipse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].sineStar(org.locationtech.jts.geom.Geometry,int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[java.lang.Math].min(double,double)"
    - "[org.locationtech.jts.geom.util.SineStarFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setCentre(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setSize(double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - "[org.locationtech.jts.geom.util.SineStarFactory].setNumArms(int)"
    - "[org.locationtech.jts.geom.util.SineStarFactory].setArmLengthRatio(double)"
    - "[org.locationtech.jts.geom.util.SineStarFactory].createSineStar()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:210,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:211,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:213,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:213,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:213,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:214,1"
      Dst: "[org.locationtech.jts.geom.util.SineStarFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:215,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:215,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setCentre(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:216,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setSize(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:217,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:218,1"
      Dst: "[org.locationtech.jts.geom.util.SineStarFactory].setNumArms(int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:219,1"
      Dst: "[org.locationtech.jts.geom.util.SineStarFactory].setArmLengthRatio(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:220,1"
      Dst: "[org.locationtech.jts.geom.util.SineStarFactory].createSineStar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.SineStarFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.util.SineStarFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:76,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:71,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:47,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].<init>()"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:73,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setCentre(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setCentre(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:95,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setCentre(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setCentre(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setSize(double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setSize(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:109,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setSize(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].setSize(double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].setNumPoints(int)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.SineStarFactory].setNumArms(int)"
    functionSourceFile: "org.locationtech.jts.geom.util.SineStarFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.SineStarFactory].setArmLengthRatio(double)"
    functionSourceFile: "org.locationtech.jts.geom.util.SineStarFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.SineStarFactory].createSineStar()"
    functionSourceFile: "org.locationtech.jts.geom.util.SineStarFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getEnvelope()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.SineStarFactory:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.SineStarFactory:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.SineStarFactory:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.SineStarFactory:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.SineStarFactory:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.SineStarFactory:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.SineStarFactory:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.SineStarFactory:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:108,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getEnvelope()"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:109,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:120,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:121,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:128,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:134,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:142,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:143,1"
      Dst: "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:145,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:147,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.util.SineStarFactory:148,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory$Dimensions].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:436"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:439"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:438"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:439"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:443"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:442"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory$Dimensions:437,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.GeometricShapeFactory].coord(double,double)"
    functionSourceFile: "org.locationtech.jts.util.GeometricShapeFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:382,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.util.GeometricShapeFactory:383,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].comb(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:237"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:247"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:225,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:226,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:230,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:231,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:233,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:234,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:240,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:247,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:249,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:251,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].pointFieldCentroidStar(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].pointFieldStar(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:256,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:257,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCentroid()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:258,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].pointFieldStar(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].pointFieldStar(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:270"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:264,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:266,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:268,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:269,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:269,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:271,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:275,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:275,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:275,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:280,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:280,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Angle"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].atan2(double,double)"
    functionUses: 4
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Angle:78,1"
      Dst: "[java.lang.Math].atan2(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint].<init>(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint:287,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].pointFieldStar(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:270"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:264,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:266,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:268,1"
      Dst: "[org.locationtech.jts.algorithm.Angle].angle(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:269,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions$OrderedPoint].<init>(org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:269,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:271,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:275,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:275,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:275,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:280,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:280,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].spiral(org.locationtech.jts.geom.Geometry,int,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[java.lang.Math].min(double,double)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jtstest.function.CreateShapeFunctions].genSpiralCycle(org.locationtech.jts.geom.Coordinate,double,double,int)"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:305,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:306,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:308,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:308,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:308,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:311,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:313,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:316,1"
      Dst: "[org.locationtech.jtstest.function.CreateShapeFunctions].genSpiralCycle(org.locationtech.jts.geom.Coordinate,double,double,int)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:317,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:322,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:324,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:326,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].genSpiralCycle(org.locationtech.jts.geom.Coordinate,double,double,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:338,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:339,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:340,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:340,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:340,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 118
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:119,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate[],boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateArrays"
    linkageType: null
    functionLinenumber: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:476"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateArrays:479"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateArrays:483"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].genSpiralCycle(org.locationtech.jts.geom.Coordinate,double,double,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "double"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].cos(double)"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:338,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:339,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:340,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:340,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:340,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].bezierCurve(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:350,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:51,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:52,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].bezierCurveSkew(org.locationtech.jts.geom.Geometry,double,double)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double,double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:359,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double,double)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:67,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,double,double)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:68,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].bezierCurveControl(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:364,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.CubicBezierCurve].bezierCurve(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.shape.CubicBezierCurve"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:87,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.shape.CubicBezierCurve:88,1"
      Dst: "[org.locationtech.jts.shape.CubicBezierCurve].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.CreateShapeFunctions].nGon(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.function.CreateShapeFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Envelope].centre()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[java.lang.Math].cos(double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    - "[java.lang.Math].sin(double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.CreateShapeFunctions:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.CreateShapeFunctions:379"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:370,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:371,1"
      Dst: "[org.locationtech.jts.geom.Envelope].centre()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:372,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:372,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:372,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:373,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:376,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:376,1"
      Dst: "[java.lang.Math].cos(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:377,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:377,1"
      Dst: "[java.lang.Math].sin(double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:378,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:378,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:380,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:381,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:381,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jtstest.function.CreateShapeFunctions:381,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getEnvelopeOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].centre()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:517"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:518"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:517"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:517,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:519,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.Envelope:520,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].closeRing()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:203"
        BranchSideFuncs:
        - "copy()"
        - "add(org.locationtech.jts.geom.Coordinate,boolean)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:199,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:200,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateList:201,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:43"
        BranchSideFuncs:
        - "getFactory()"
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:42"
        BranchSideFuncs:
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].getGeometryFactory()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:493,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction:134,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.IntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction:140,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction:142,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$8].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$8:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByLen()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$8:128,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByLen()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByLen()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:167,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].<init>(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 106
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:109,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].setBoundarySegment(int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "void"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChains(java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainStart(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainEnd(int)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:121"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "findChainEnd(int)"
        - "createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:119,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainStart(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:120,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:122,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainEnd(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:123,1"
      Dst: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:124,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].createChain(org.locationtech.jts.noding.SegmentString,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 128
    functionDepth: 3
    returnType: "org.locationtech.jts.noding.SegmentString"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.locationtech.jts.noding.BasicSegmentString].getData()"
    - "[org.locationtech.jts.noding.NodedSegmentString].getData()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.SegmentString].getData()"
    functionUses: 1
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:133"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "getData()"
    Callsites:
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:132,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:132,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:134,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getData()"
    - Src: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:134,1"
      Dst: "[org.locationtech.jts.noding.BasicSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainStart(int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:140"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap].findChainEnd(int)"
    functionSourceFile: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.BoundaryChainNoder$BoundaryChainMap:148"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXY(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:44,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToXZ(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:55,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].projectToYZ(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:66,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].<init>(org.locationtech.jts.geom.CoordinateSequence,int[])"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinateCopy(int)"
    functionUses: 62
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:86,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinateCopy(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinateCopy(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getZ(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getZ(int)"
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:100,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:114"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
      - BranchSide: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:113"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:114,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:104,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getZ(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:108,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinateCopy(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getZ(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getZ(int)"
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateXYM].setZ(double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setZ(double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionUses: 12
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:94,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:96,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:114"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
      - BranchSide: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:113"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:114,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:100,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:104,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getZ(int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:108,1"
      Dst: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 34
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:114"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
      - BranchSide: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:113"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:114,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 117
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 57
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:118,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 14
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:122,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:126,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].expandEnvelope(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:130,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].clone()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 134
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:135,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    functionSourceFile: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 10
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence:140,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$8].<init>(org.locationtech.jtstest.testbuilder.CommandPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$8:198,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel$8:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.CommandPanel].access$900(org.locationtech.jtstest.testbuilder.CommandPanel,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.CommandPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.CommandPanel"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.CommandPanel].insertCmdText(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.CommandPanel:44,1"
      Dst: "[org.locationtech.jtstest.testbuilder.CommandPanel].insertCmdText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].intersects(org.locationtech.jts.geom.prep.PreparedLineString,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 17
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedLineString"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].<init>(org.locationtech.jts.geom.prep.PreparedLineString)"
    - "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:45,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].<init>(org.locationtech.jts.geom.prep.PreparedLineString)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:46,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].<init>(org.locationtech.jts.geom.prep.PreparedLineString)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 16
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].getIntersectionFinder()"
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].hasDimension(int)"
    - "[org.locationtech.jts.geom.Geometry].hasDimension(int)"
    - "[org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon].hasDimension(int)"
    - "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 21
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85"
        BranchSideFuncs:
        - "getIntersectionFinder()"
        - "intersects(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:84"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:84"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:91"
        BranchSideFuncs:
        - "isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:90"
        BranchSideFuncs:
        - "hasDimension(int)"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:90"
        BranchSideFuncs:
        - "hasDimension(int)"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:94"
        BranchSideFuncs:
        - "isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:72,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:74,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:75,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].getIntersectionFinder()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:75,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:86,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasDimension(int)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:92,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:46,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentStringUtil:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:66"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "next()"
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.noding.SegmentStringUtil:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:59,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:60,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:61,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:61,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:62,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:63,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:64,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].<init>(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineString].getIntersectionFinder()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineString"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 8
    returnType: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].getGeometry()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineString:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineString:46"
        BranchSideFuncs:
        - "getGeometry()"
        - "extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
        - "<init>(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineString:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineString:45,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].getGeometry()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineString:45,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineString:45,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineString].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineString"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineString:27,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geom.prep.BasicPreparedGeometry"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:40,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:43,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:53,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:62,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:63,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineString].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineString"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 15
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineString:27,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.BasicPreparedGeometry"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 15
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:79"
        BranchSideFuncs:
        - "next()"
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:78"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:78"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:73,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:74,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:74,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:75,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.prep.BasicPreparedGeometry:76,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 13
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:72"
        BranchSideFuncs:
        - "locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:73,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].getGeometry()"
    - "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:118"
        BranchSideFuncs:
        - "getGeometry()"
        - "next()"
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:111,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:112,1"
      Dst: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:113,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:113,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:114,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:115,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].getGeometry()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:115,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 4
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:47,1"
      Dst: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].<init>(java.util.List)"
    - Src: "org.locationtech.jts.geom.util.ComponentCoordinateExtracter:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].<init>(org.locationtech.jts.geom.prep.PreparedLineString)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedLineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:57,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects"
    linkageType: null
    functionLinenumber: 71
    functionDepth: 16
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].getIntersectionFinder()"
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].hasDimension(int)"
    - "[org.locationtech.jts.geom.Geometry].hasDimension(int)"
    - "[org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon].hasDimension(int)"
    - "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].size()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 21
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85"
        BranchSideFuncs:
        - "getIntersectionFinder()"
        - "intersects(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:84"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:84"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:91"
        BranchSideFuncs:
        - "isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:90"
        BranchSideFuncs:
        - "hasDimension(int)"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:90"
        BranchSideFuncs:
        - "hasDimension(int)"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:94"
        BranchSideFuncs:
        - "isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:72,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:74,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:75,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].getIntersectionFinder()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:75,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:86,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].isAnyTargetComponentInTest(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasDimension(int)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:92,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.prep.PreparedLineStringIntersects].isAnyTestPointInTarget(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geom.prep.PreparedLineString].getGeometry()"
    - "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:118"
        BranchSideFuncs:
        - "getGeometry()"
        - "next()"
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:111,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:112,1"
      Dst: "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].getCoordinates(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:113,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:113,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:114,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:115,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedLineString].getGeometry()"
    - Src: "org.locationtech.jts.geom.prep.PreparedLineStringIntersects:115,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:82,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:83,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduceKeepCollapsed(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].setRemoveCollapsedComponents(boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:101,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:102,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setRemoveCollapsedComponents(boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:103,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reducePointwise(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].setPointwise(boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:122,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:123,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setPointwise(boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:124,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setRemoveCollapsedComponents(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setChangePrecisionModel(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].setPointwise(boolean)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].reduce(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:192,1"
      Dst: "[org.locationtech.jts.precision.PointwisePrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:195,1"
      Dst: "[org.locationtech.jts.precision.PrecisionReducerTransformer].reduce(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,boolean)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:200,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].changePM(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].createEditor(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation].<init>()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:215,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:215,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createEditor(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:217,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation].<init>()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:217,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createEditor(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.util.GeometryEditor"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jts.precision.GeometryPrecisionReducer].createFactory(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.GeometryPrecisionReducer:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.GeometryPrecisionReducer:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:223,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:224,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:226,1"
      Dst: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createFactory(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:227,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.GeometryPrecisionReducer].createFactory(org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.GeometryPrecisionReducer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryFactory"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:235,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.precision.GeometryPrecisionReducer:236,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$2].<init>(org.locationtech.jts.io.geojson.GeoJsonWriter,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.geojson.GeoJsonWriter"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.geojson.GeoJsonWriter$2:162,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.geojson.GeoJsonWriter$2].toJSONString()"
    functionSourceFile: "org.locationtech.jts.io.geojson.GeoJsonWriter$2"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3].<init>(org.locationtech.jtstest.testbuilder.GeometryPopupMenu)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryPopupMenu"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryPopupMenu$3:56,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:348,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].displayInfo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,boolean,boolean)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getCategory()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    functionUses: 6
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:33,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getName()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 8
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:38"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:39"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:40"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:37,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:38,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:38,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getDescription()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getDescription()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:44,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getDescription()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getParameterNames()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:48,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getParameterTypes()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    functionUses: 4
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:52,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getReturnType()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getReturnType()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getReturnType()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction:org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getReturnType()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getReturnType()"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:56,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getReturnType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getSignature()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getSignature()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:60,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getSignature()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].isBinary()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:64,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].isRequiredB()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isRequiredB()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:67,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isRequiredB()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachA(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].createResult(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:70,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:72,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachA(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:75,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:77,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:77,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].createResult(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachA(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:89,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:92,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].hasBGeom(java.lang.Object[])"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:97,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].hasBGeom(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:98,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:101,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].hasBGeom(java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:105"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:110,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:112,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:116,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:121,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:123,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:125,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].createResult(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:81,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:82,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].createResult(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:81,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:82,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:84,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:85,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachA(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:89,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:91,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:92,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].hasBGeom(java.lang.Object[])"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:100"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:97,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].hasBGeom(java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:98,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:101,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].hasBGeom(java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:105"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeEachB(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:110,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:112,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:116,1"
      Dst: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].invokeFun(org.locationtech.jts.geom.Geometry,java.lang.Object[],java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:121,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:123,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction:125,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.transform.JDOMSource$DocumentReader].<init>()"
    functionSourceFile: "org.jdom2.transform.JDOMSource$DocumentReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.SAXOutputter].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:511,1"
      Dst: "[org.jdom2.output.SAXOutputter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$DocumentReader].parse(java.lang.String)"
    functionSourceFile: "org.jdom2.transform.JDOMSource$DocumentReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.SAXNotSupportedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:532,1"
      Dst: "[org.xml.sax.SAXNotSupportedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$DocumentReader].parse(org.xml.sax.InputSource)"
    functionSourceFile: "org.jdom2.transform.JDOMSource$DocumentReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.InputSource"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.transform.JDOMSource$JDOMInputSource].getDocumentSource()"
    - "[org.jdom2.output.SAXOutputter].output(org.jdom2.Document)"
    - "[org.jdom2.transform.JDOMSource$JDOMInputSource].getListSource()"
    - "[org.jdom2.output.SAXOutputter].output(java.util.List)"
    - "[java.lang.Throwable].getMessage()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String,java.lang.Exception)"
    - "[org.xml.sax.SAXNotSupportedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.transform.JDOMSource$DocumentReader:554"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMSource$DocumentReader:568"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.transform.JDOMSource$DocumentReader:557"
      Branch Sides:
      - BranchSide: "org.jdom2.transform.JDOMSource$DocumentReader:561"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.transform.JDOMSource$DocumentReader:560"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:556,1"
      Dst: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getDocumentSource()"
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:558,1"
      Dst: "[org.jdom2.output.SAXOutputter].output(org.jdom2.Document)"
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:561,1"
      Dst: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getListSource()"
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:561,1"
      Dst: "[org.jdom2.output.SAXOutputter].output(java.util.List)"
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:565,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:565,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "org.jdom2.transform.JDOMSource$DocumentReader:569,1"
      Dst: "[org.xml.sax.SAXNotSupportedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 8
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getDocumentSource()"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Document"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.SAXOutputter].output(org.jdom2.Document)"
    functionSourceFile: "org.jdom2.output.SAXOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Document"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.SAXOutputter].buildTarget(org.jdom2.Document)"
    - "[org.jdom2.output.support.SAXOutputProcessor].process(org.jdom2.output.support.SAXTarget,org.jdom2.output.Format,org.jdom2.Document)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.SAXOutputter:653,1"
      Dst: "[org.jdom2.output.SAXOutputter].buildTarget(org.jdom2.Document)"
    - Src: "org.jdom2.output.SAXOutputter:653,1"
      Dst: "[org.jdom2.output.support.SAXOutputProcessor].process(org.jdom2.output.support.SAXTarget,org.jdom2.output.Format,org.jdom2.Document)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.SAXOutputter].buildTarget(org.jdom2.Document)"
    functionSourceFile: "org.jdom2.output.SAXOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.jdom2.output.support.SAXTarget"
    argCount: 1
    argTypes:
    - "org.jdom2.Document"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Document].getDocType()"
    - "[org.jdom2.DocType].getPublicID()"
    - "[org.jdom2.DocType].getSystemID()"
    - "[org.jdom2.output.support.SAXTarget].<init>(org.xml.sax.ContentHandler,org.xml.sax.ErrorHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ext.LexicalHandler,org.xml.sax.ext.DeclHandler,boolean,boolean,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.SAXOutputter:631"
      Branch Sides:
      - BranchSide: "org.jdom2.output.SAXOutputter:638"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.SAXOutputter:637"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.SAXOutputter:633"
      Branch Sides:
      - BranchSide: "org.jdom2.output.SAXOutputter:638"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.SAXOutputter:637"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.SAXOutputter:632,1"
      Dst: "[org.jdom2.Document].getDocType()"
    - Src: "org.jdom2.output.SAXOutputter:634,1"
      Dst: "[org.jdom2.DocType].getPublicID()"
    - Src: "org.jdom2.output.SAXOutputter:635,1"
      Dst: "[org.jdom2.DocType].getSystemID()"
    - Src: "org.jdom2.output.SAXOutputter:638,1"
      Dst: "[org.jdom2.output.support.SAXTarget].<init>(org.xml.sax.ContentHandler,org.xml.sax.ErrorHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ext.LexicalHandler,org.xml.sax.ext.DeclHandler,boolean,boolean,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.jdom2.Document].getDocType()"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].indexOfDocType()"
    - "[org.jdom2.ContentList].get(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:267"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:270"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:266,1"
      Dst: "[org.jdom2.ContentList].indexOfDocType()"
    - Src: "org.jdom2.Document:270,1"
      Dst: "[org.jdom2.ContentList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.DocType].getPublicID()"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].getSystemID()"
    functionSourceFile: "org.jdom2.DocType"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget].<init>(org.xml.sax.ContentHandler,org.xml.sax.ErrorHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ext.LexicalHandler,org.xml.sax.ext.DeclHandler,boolean,boolean,java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.SAXTarget"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 10
    argTypes:
    - "org.xml.sax.ContentHandler"
    - "org.xml.sax.ErrorHandler"
    - "org.xml.sax.DTDHandler"
    - "org.xml.sax.EntityResolver"
    - "org.xml.sax.ext.LexicalHandler"
    - "org.xml.sax.ext.DeclHandler"
    - "boolean"
    - "boolean"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.output.support.SAXTarget$SAXLocator].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.SAXTarget:193,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.support.SAXTarget:202,1"
      Dst: "[org.jdom2.output.support.SAXTarget$SAXLocator].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.SAXTarget$SAXLocator].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.SAXTarget$SAXLocator"
    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: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.SAXTarget$SAXLocator:89,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.transform.JDOMSource$JDOMInputSource].getListSource()"
    functionSourceFile: "org.jdom2.transform.JDOMSource$JDOMInputSource"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.SAXOutputter].output(java.util.List)"
    functionSourceFile: "org.jdom2.output.SAXOutputter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.SAXOutputter].buildTarget(org.jdom2.Document)"
    - "[org.jdom2.output.support.SAXOutputProcessor].processAsDocument(org.jdom2.output.support.SAXTarget,org.jdom2.output.Format,java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.SAXOutputter:674,1"
      Dst: "[org.jdom2.output.SAXOutputter].buildTarget(org.jdom2.Document)"
    - Src: "org.jdom2.output.SAXOutputter:674,1"
      Dst: "[org.jdom2.output.support.SAXOutputProcessor].processAsDocument(org.jdom2.output.support.SAXTarget,org.jdom2.output.Format,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[javax.swing.JToolBar].<init>()"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    functionUses: 0
    ICount: 126
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:34,1"
      Dst: "[javax.swing.JToolBar].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:35,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:49,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:49,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:49,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].clearToolButtons()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.ButtonGroup].clearSelection()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:83,1"
      Dst: "[javax.swing.ButtonGroup].clearSelection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].selectZoomButton()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.AbstractButton].getModel()"
    - "[javax.swing.ButtonGroup].setSelected(javax.swing.ButtonModel,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:88,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:89,1"
      Dst: "[javax.swing.AbstractButton].getModel()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:89,1"
      Dst: "[javax.swing.ButtonGroup].setSelected(javax.swing.ButtonModel,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].getToolBar()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JToolBar"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JToolBar].setFloatable(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createToggleButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$21].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].group(javax.swing.ButtonGroup,javax.swing.AbstractButton[])"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].strut(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].add(javax.swing.JToolBar,java.awt.Component[])"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    functionUses: 0
    ICount: 183
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:98,1"
      Dst: "[javax.swing.JToolBar].setFloatable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$1].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$2].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$3].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$5].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:141,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:148,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$7].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:155,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:162,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$9].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$10].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$11].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$12].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createToggleButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$13].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$14].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:205,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$15].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$16].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$17].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$18].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:234,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$19].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$20].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$21].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$22].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].group(javax.swing.ButtonGroup,javax.swing.AbstractButton[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:284,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].strut(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:282,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].add(javax.swing.JToolBar,java.awt.Component[])"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:303,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].strut(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Component"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Box].createHorizontalStrut(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:309,1"
      Dst: "[javax.swing.Box].createHorizontalStrut(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].add(javax.swing.JToolBar,java.awt.Component[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JToolBar"
    - "java.awt.Component[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:314,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].group(javax.swing.ButtonGroup,javax.swing.AbstractButton[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.ButtonGroup"
    - "javax.swing.AbstractButton[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:319,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].setFocusGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:323"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:325"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:327"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:324,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createToggleButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JToggleButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JToggleButton].<init>()"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:334,1"
      Dst: "[javax.swing.JToggleButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:335,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:335,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:336,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:336,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:337,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:338,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:339,1"
      Dst: "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:340,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:341,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:342,1"
      Dst: "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:343,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:343,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:344,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:345,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:346,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].createButton(java.lang.String,javax.swing.ImageIcon,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:354,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:355,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:355,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:356,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:356,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:357,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:358,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:359,1"
      Dst: "[javax.swing.AbstractButton].setVerticalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:360,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:361,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:362,1"
      Dst: "[javax.swing.AbstractButton].setHorizontalTextPosition(int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:363,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:363,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:364,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:365,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:366,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:367,1"
      Dst: "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].<init>(byte[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ClipImage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].getTransferDataFlavors()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ClipImage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.datatransfer.DataFlavor[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ClipImage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.datatransfer.DataFlavor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.datatransfer.DataFlavor].equals(java.awt.datatransfer.DataFlavor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:37,1"
      Dst: "[java.awt.datatransfer.DataFlavor].equals(java.awt.datatransfer.DataFlavor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].getTransferData(java.awt.datatransfer.DataFlavor)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ClipImage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.awt.datatransfer.DataFlavor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ClipImage].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - "[java.awt.datatransfer.UnsupportedFlavorException].<init>(java.awt.datatransfer.DataFlavor)"
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].createImage(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.ClipImage:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.ClipImage:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.ClipImage:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:44,1"
      Dst: "[java.awt.datatransfer.UnsupportedFlavorException].<init>(java.awt.datatransfer.DataFlavor)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:45,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:45,1"
      Dst: "[java.awt.Toolkit].createImage(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ClipImage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.datatransfer.DataFlavor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.datatransfer.DataFlavor].equals(java.awt.datatransfer.DataFlavor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ClipImage:37,1"
      Dst: "[java.awt.datatransfer.DataFlavor].equals(java.awt.datatransfer.DataFlavor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].lostOwnership(java.awt.datatransfer.Clipboard,java.awt.datatransfer.Transferable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ClipImage"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.datatransfer.Clipboard"
    - "java.awt.datatransfer.Transferable"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$3].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$3:182,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$3].mouseClicked(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$3:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].access$000(org.locationtech.jtstest.testbuilder.WKTPanel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:55,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].setFocusGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:26,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:23,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:30,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].clear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:36,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].createCache(java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].createCache(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].createCache(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:47,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:50,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:53,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.AttributeList:org.jdom2.ContentList].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:124"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:124,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:125,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ListGeometryContainer].createCache(java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:49"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:47,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:50,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:53,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.testbuilder.model.ListGeometryContainer:54,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.PolygonNode].<init>(org.locationtech.jts.geom.Polygon,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "org.locationtech.jtstest.testbuilder.GeometryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    - "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,int,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:344,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:344,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,int,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PolygonNode].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.PolygonNode].getIcon()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.ImageIcon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PolygonNode:355"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PolygonNode:354"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.PolygonNode].fillChildren()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.PolygonNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.LinearRingNode].<init>(org.locationtech.jts.geom.LinearRing,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.GeometryContext].isSorted()"
    - "[org.locationtech.jtstest.testbuilder.GeometryContext].getComparator()"
    - "[java.util.List].sort(java.util.Comparator)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[java.util.List].add(int,java.lang.Object)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.PolygonNode:360"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PolygonNode:363"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.PolygonNode:364"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.PolygonNode:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.PolygonNode:366"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:360,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:361,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:361,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:361,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:361,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:361,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LinearRingNode].<init>(org.locationtech.jts.geom.LinearRing,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:361,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:364,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryContext].isSorted()"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:365,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryContext].getComparator()"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:365,1"
      Dst: "[java.util.List].sort(java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:367,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.PolygonNode:367,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LinearRingNode].<init>(org.locationtech.jts.geom.LinearRing,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LinearRingNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.lang.String"
    - "org.locationtech.jtstest.testbuilder.GeometryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LineStringNode].<init>(org.locationtech.jts.geom.LineString,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LinearRingNode:426,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LineStringNode].<init>(org.locationtech.jts.geom.LineString,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LineStringNode].<init>(org.locationtech.jts.geom.LineString,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LineStringNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "java.lang.String"
    - "org.locationtech.jtstest.testbuilder.GeometryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,int,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LineStringNode:385,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jtstest.testbuilder.LineStringNode:385,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryNode].<init>(org.locationtech.jts.geom.Geometry,int,java.lang.String,org.locationtech.jtstest.testbuilder.GeometryContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].isSorted()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryContext:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryContext:223"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryContext].getComparator()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryContext"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    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: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:43,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createFileFilter(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.filechooser.FileFilter"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    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()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil$1].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:62,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:62,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:62,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil$1].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil$1].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.filechooser.FileFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil$1:63,1"
      Dst: "[javax.swing.filechooser.FileFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].chooseFilenameWithConfirm(java.awt.Component,javax.swing.JFileChooser)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "javax.swing.JFileChooser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - "[javax.swing.JFileChooser].getSelectedFile()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - "[java.io.File].toString()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:83,1"
      Dst: "[javax.swing.JFileChooser].showSaveDialog(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:84,1"
      Dst: "[javax.swing.JFileChooser].getSelectedFile()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:86,1"
      Dst: "[java.io.File].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].confirmOverwrite(java.awt.Component,java.io.File)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].exists()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:99,1"
      Dst: "[java.io.File].exists()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:100,1"
      Dst: "[javax.swing.JOptionPane].showConfirmDialog(java.awt.Component,java.lang.Object,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].setEnabledWithBackground(java.awt.Component,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].setEnabled(boolean)"
    - "[java.awt.Component].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:112,1"
      Dst: "[java.awt.Component].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:114,1"
      Dst: "[java.awt.Component].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].coerce(java.lang.Object,java.lang.Class)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:120"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:121,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:125,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertInteger(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:132,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:135,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].convertDouble(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Double"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:141,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:144,1"
      Dst: "[java.lang.Double].valueOf(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getInteger(javax.swing.JTextField,java.lang.Integer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 2
    argTypes:
    - "javax.swing.JTextField"
    - "java.lang.Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:148,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:149,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:149,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:154,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:157,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getDouble(javax.swing.JTextField,java.lang.Double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Double"
    argCount: 2
    argTypes:
    - "javax.swing.JTextField"
    - "java.lang.Double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].length()"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.Double].valueOf(double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:161,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:162,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:162,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:167,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:170,1"
      Dst: "[java.lang.Double].valueOf(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.text.JTextComponent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.swing.text.JTextComponent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].getText()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:174,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].value(javax.swing.JComboBox,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "javax.swing.JComboBox"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComboBox].getSelectedIndex()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:179,1"
      Dst: "[javax.swing.JComboBox].getSelectedIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - "[java.lang.Object].toString()"
    - "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:188"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryTransferable].<init>(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:190,1"
      Dst: "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:196,1"
      Dst: "[java.awt.datatransfer.StringSelection].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getFromClipboard()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getContents(java.awt.datatransfer.Clipboard)"
    - "[java.awt.datatransfer.Transferable].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - "[java.awt.datatransfer.Transferable].getTransferData(java.awt.datatransfer.DataFlavor)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:201,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:202,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getContents(java.awt.datatransfer.Clipboard)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:205,1"
      Dst: "[java.awt.datatransfer.Transferable].isDataFlavorSupported(java.awt.datatransfer.DataFlavor)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:206,1"
      Dst: "[java.awt.datatransfer.Transferable].getTransferData(java.awt.datatransfer.DataFlavor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].getContents(java.awt.datatransfer.Clipboard)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.datatransfer.Transferable"
    argCount: 1
    argTypes:
    - "java.awt.datatransfer.Clipboard"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.datatransfer.Clipboard].getContents(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:219,1"
      Dst: "[java.awt.datatransfer.Clipboard].getContents(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].reportException(java.awt.Component,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].wrap(java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:226,1"
      Dst: "[javax.swing.JOptionPane].showMessageDialog(java.awt.Component,java.lang.Object,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:228,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "javax.swing.ImageIcon"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:232,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:233,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:234,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:235,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:235,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:236,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:237,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:238,1"
      Dst: "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:243,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:244,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:245,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:247,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "javax.swing.JButton"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(java.lang.String,javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JButton"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "javax.swing.ImageIcon"
    - "java.lang.String"
    - "java.awt.event.ActionListener"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - "[javax.swing.AbstractButton].setIconTextGap(int)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[java.awt.Component].setFocusable(boolean)"
    - "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:262"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:261"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:264"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:263"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:255,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:256,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:257,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:259,1"
      Dst: "[javax.swing.AbstractButton].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:260,1"
      Dst: "[javax.swing.AbstractButton].setIconTextGap(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:262,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:262,1"
      Dst: "[javax.swing.AbstractButton].setMargin(java.awt.Insets)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:263,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:265,1"
      Dst: "[java.awt.Component].setFocusable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:266,1"
      Dst: "[javax.swing.AbstractButton].setFocusPainted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ActionEvent].getModifiers()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:272,1"
      Dst: "[java.awt.event.ActionEvent].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isShiftKeyPressed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.ActionEvent].getModifiers()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:276,1"
      Dst: "[java.awt.event.ActionEvent].getModifiers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].showTab(javax.swing.JTabbedPane,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JTabbedPane"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:281,1"
      Dst: "[javax.swing.JTabbedPane].indexOfTab(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:281,1"
      Dst: "[javax.swing.JTabbedPane].setSelectedIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].setAntiAlias(java.awt.Graphics2D,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Graphics2D"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setRenderingHint(java.awt.RenderingHints$Key,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:285"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingUtil:285,1"
      Dst: "[java.awt.Graphics2D].setRenderingHint(java.awt.RenderingHints$Key,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].<init>(org.locationtech.jts.geom.LineString,boolean,double)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "boolean"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.simplify.LinkedLine].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:153,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:156,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:157,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:159,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:160,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:162,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:165,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:170,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:178,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].simplify(org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].createQueue()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - "[java.util.PriorityQueue].poll()"
    - "[org.locationtech.jts.coverage.Corner].isRemoved()"
    - "[org.locationtech.jts.coverage.Corner].getArea()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].isRemovable(org.locationtech.jts.coverage.Corner,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].removeCorner(org.locationtech.jts.coverage.Corner,java.util.PriorityQueue)"
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:187"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:193"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:192"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:182,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].createQueue()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:183,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:184,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:185,1"
      Dst: "[java.util.PriorityQueue].poll()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:187,1"
      Dst: "[org.locationtech.jts.coverage.Corner].isRemoved()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:191,1"
      Dst: "[org.locationtech.jts.coverage.Corner].getArea()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:193,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].isRemovable(org.locationtech.jts.coverage.Corner,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:194,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].removeCorner(org.locationtech.jts.coverage.Corner,java.util.PriorityQueue)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:197,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].createQueue()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.util.PriorityQueue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.PriorityQueue].<init>()"
    - "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:201,1"
      Dst: "[java.util.PriorityQueue].<init>()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:202,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].isRing()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:205,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].<init>(org.locationtech.jts.simplify.LinkedLine,int)"
    - "[org.locationtech.jts.coverage.Corner].getArea()"
    - "[java.util.PriorityQueue].add(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:212,1"
      Dst: "[org.locationtech.jts.coverage.Corner].<init>(org.locationtech.jts.simplify.LinkedLine,int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:213,1"
      Dst: "[org.locationtech.jts.coverage.Corner].getArea()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:214,1"
      Dst: "[java.util.PriorityQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].isRemovable(org.locationtech.jts.coverage.Corner,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    - "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].envelope()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].hasIntersectingVertex(org.locationtech.jts.coverage.Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - "[org.locationtech.jts.coverage.Corner].isBaseline(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:220,1"
      Dst: "[org.locationtech.jts.coverage.Corner].envelope()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:223,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:224,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].hasIntersectingVertex(org.locationtech.jts.coverage.Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:228,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].size()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:229,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:230,1"
      Dst: "[org.locationtech.jts.coverage.Corner].isBaseline(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].hasIntersectingVertex(org.locationtech.jts.coverage.Corner,org.locationtech.jts.geom.Envelope,org.locationtech.jts.coverage.TPVWSimplifier$Edge)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].query(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getCoordinate(int)"
    - "[org.locationtech.jts.coverage.Corner].isVertex(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.coverage.Corner].intersects(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:260"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:259"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:248"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:248,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:251,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:253,1"
      Dst: "[org.locationtech.jts.coverage.Corner].isVertex(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:257,1"
      Dst: "[org.locationtech.jts.coverage.Corner].intersects(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 8
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:264,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].query(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].removeCorner(org.locationtech.jts.coverage.Corner,java.util.PriorityQueue)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.coverage.Corner"
    - "java.util.PriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.Corner].getIndex()"
    - "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - "[org.locationtech.jts.simplify.LinkedLine].remove(int)"
    - "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:277,1"
      Dst: "[org.locationtech.jts.coverage.Corner].getIndex()"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:278,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].prev(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:279,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].next(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:280,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].remove(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:281,1"
      Dst: "[org.locationtech.jts.index.VertexSequencePackedRtree].remove(int)"
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:284,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].addCorner(int,java.util.PriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].toString()"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:289,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.simplify.LinkedLine].toString()"
    functionSourceFile: "org.locationtech.jts.simplify.LinkedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.simplify.LinkedLine:124,1"
      Dst: "[org.locationtech.jts.simplify.LinkedLine].getCoordinates()"
    - Src: "org.locationtech.jts.simplify.LinkedLine:124,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].access$100(org.locationtech.jts.coverage.TPVWSimplifier$Edge,org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionSourceFile: "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.coverage.TPVWSimplifier$Edge"
    - "org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].simplify(org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.coverage.TPVWSimplifier$Edge:134,1"
      Dst: "[org.locationtech.jts.coverage.TPVWSimplifier$Edge].simplify(org.locationtech.jts.coverage.TPVWSimplifier$EdgeIndex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$3].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$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: "org.locationtech.jts.io.gml2.GeometryStrategies$3:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$3].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.xml.sax.SAXException].<init>(java.lang.String,java.lang.Exception)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$3:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$3:139"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:142"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:141"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$3:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:155"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:154"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$3:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$3:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:139,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:140,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:142,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:142,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:148,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:149,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:151,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String,java.lang.Exception)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:155,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:156,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:162,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$3:163,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.xml.sax.Attributes"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:497,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:498,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:499,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:500,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:503,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:504,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:506,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:508,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].setSidesToGenerate(boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].getPoints(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].extractPoints(org.locationtech.jts.geom.LineString,double,java.util.List)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:68,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:69,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:70,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:71,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:72,1"
      Dst: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].extractPoints(org.locationtech.jts.geom.LineString,double,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.LinearComponentExtracter"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.LinearComponentExtracter:116,1"
      Dst: "[org.locationtech.jts.geom.util.LinearComponentExtracter].getLines(org.locationtech.jts.geom.Geometry,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].extractPoints(org.locationtech.jts.geom.LineString,double,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].computeOffsetPoints(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:80,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:82,1"
      Dst: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].computeOffsetPoints(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].computeOffsetPoints(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:98,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:107,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:108,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].extractPoints(org.locationtech.jts.geom.LineString,double,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "double"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].computeOffsetPoints(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:80,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:82,1"
      Dst: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].computeOffsetPoints(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator].computeOffsetPoints(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:98,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:107,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.operation.overlay.validate.OffsetPointGenerator:108,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.dissolve.DissolveEdgeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveEdgeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.DissolveEdgeGraph:26,1"
      Dst: "[org.locationtech.jts.edgegraph.EdgeGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.DissolveEdgeGraph].createEdge(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveEdgeGraph"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 3
    returnType: "org.locationtech.jts.edgegraph.HalfEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.dissolve.DissolveHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.DissolveEdgeGraph:30,1"
      Dst: "[org.locationtech.jts.dissolve.DissolveHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.dissolve.DissolveHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.dissolve.DissolveHalfEdge"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.MarkHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.dissolve.DissolveHalfEdge:31,1"
      Dst: "[org.locationtech.jts.edgegraph.MarkHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.MarkHalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.MarkHalfEdge"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.MarkHalfEdge:89,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.edgegraph.HalfEdge:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeVertexEnvelope(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:71,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:72,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:72,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:74,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 395
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:396,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].<init>(java.util.Collection,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].<init>()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:110,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:84,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:88,1"
      Dst: "[org.locationtech.jts.triangulate.NonEncroachingSplitPointFinder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:111,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:113,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].setConstraints(java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.util.List"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].setSplitPointFinder(org.locationtech.jts.triangulate.ConstraintSplitPointFinder)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintSplitPointFinder"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getTolerance()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getVertexFactory()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.ConstraintVertexFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].setVertexFactory(org.locationtech.jts.triangulate.ConstraintVertexFactory)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintVertexFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getSubdivision()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getKDT()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.kdtree.KdTree"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getInitialVertices()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getConstraintSegments()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getConvexHull()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeBoundingBox()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeVertexEnvelope(java.util.Collection)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:224,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeVertexEnvelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:227,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:228,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:230,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:231,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:233,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:236,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeVertexEnvelope(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:71,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:72,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:72,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:74,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:165,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:166,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeConvexHull()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getPointArray()"
    - "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:240,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:241,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getPointArray()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:242,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:243,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getPointArray()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:281,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:284,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:284,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:285,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:286,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    - "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    - "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:92"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull:86,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].createFewPointsResult()"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:93,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].reduce(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:97,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].extractUnique(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:100,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].preSort(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:103,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].grahamScan(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:106,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].toCoordinateArray(java.util.Stack)"
    - Src: "org.locationtech.jts.algorithm.ConvexHull:110,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].lineOrPolygon(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getPointArray()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:284"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:288"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:281,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:284,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:284,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:285,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:286,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:298,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:300,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConstraintVertex:35,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.triangulate.Segment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].setOnConstraint(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:314,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:316,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:317,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].setOnConstraint(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConstraintVertex:35,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].setOnConstraint(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:329,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:330,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - "[org.locationtech.jts.util.Debug].println()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:126,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Debug:127,1"
      Dst: "[org.locationtech.jts.util.Debug].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintVertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:338"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:337,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:340,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 6
    returnType: "org.locationtech.jts.index.kdtree.KdNode"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:171"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:180"
        BranchSideFuncs:
        - "findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Branch String: "org.locationtech.jts.index.kdtree.KdTree:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdTree:179"
        BranchSideFuncs:
        - "insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:163,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].<init>(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:172,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].findBestMatchNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:175,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].increment()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:180,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insertExact(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.kdtree.KdNode:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.kdtree.KdNode:149"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isVertexOfEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isOnEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].delete(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].swap(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lPrev()"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:102,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:104,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isVertexOfEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isOnEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:111,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:112,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:112,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].delete(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:119,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:119,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:120,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:123,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:123,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:125,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:142,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:146,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].swap(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:163,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lPrev()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintVertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintVertex"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConstraintVertex:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConstraintVertex:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConstraintVertex:86"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintVertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:338"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:337,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:340,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:359,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:359,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:297"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:298,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:300,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintVertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:338"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:337,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:340,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].formInitialDelaunay()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeBoundingBox()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].setLocator(org.locationtech.jts.triangulate.quadedge.QuadEdgeLocator)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:368,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeBoundingBox()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:369,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:370,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:370,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].setLocator(org.locationtech.jts.triangulate.quadedge.QuadEdgeLocator)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:371,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:372,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeBoundingBox()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeVertexEnvelope(java.util.Collection)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].max(double,double)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:224,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeVertexEnvelope(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:227,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:228,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:230,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:231,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:233,1"
      Dst: "[java.lang.Math].max(double,double)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:236,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].<init>(org.locationtech.jts.geom.Envelope,double)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].createFrame(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].initSubdiv()"
    - "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:109,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:91,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:467,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:114,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].createFrame(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:116,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].initSubdiv()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision:117,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].init()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator:30,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.LastFoundQuadEdgeLocator].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].setLocator(org.locationtech.jts.triangulate.quadedge.QuadEdgeLocator)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeLocator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:329,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:330,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].enforceConstraints()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].addConstraintVertices()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].enforceGabriel(java.util.Collection)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - "[org.locationtech.jts.util.Debug].isDebugging()"
    - "[org.locationtech.jts.triangulate.ConstraintEnforcementException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:397"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:392"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:391"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:400"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:404"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:386,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].addConstraintVertices()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:392,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].enforceGabriel(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:395,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:395,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:395,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:396,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:396,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:395,1"
      Dst: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:400,1"
      Dst: "[org.locationtech.jts.util.Debug].isDebugging()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:401,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintEnforcementException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].addConstraintVertices()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeConvexHull()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:408,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeConvexHull()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:410,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeConvexHull()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getPointArray()"
    - "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:240,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:241,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].getPointArray()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:242,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].<init>(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:243,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull].getConvexHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Collection].size()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.util.Collection].size()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:327,1"
      Dst: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:328,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:329,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:330,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].enforceGabriel(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].findNonGabrielPoint(org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConstraintSplitPointFinder].findSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.Segment].getStartX()"
    - "[org.locationtech.jts.triangulate.Segment].getStartY()"
    - "[org.locationtech.jts.triangulate.Segment].getStartZ()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    - "[org.locationtech.jts.triangulate.Segment].getData()"
    - "[org.locationtech.jts.triangulate.Segment].<init>(double,double,double,double,double,double,java.lang.Object)"
    - "[org.locationtech.jts.triangulate.Segment].getEndX()"
    - "[org.locationtech.jts.triangulate.Segment].getEndY()"
    - "[org.locationtech.jts.triangulate.Segment].getEndZ()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collection].removeAll(java.util.Collection)"
    - "[java.util.Collection].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:431"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:440"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:463"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:472"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:421,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:431,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:431,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:432,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:435,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].findNonGabrielPoint(org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:441,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintSplitPointFinder].findSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:442,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:462,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:463,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:463,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:472,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStartX()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:472,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStartY()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:473,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStartZ()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:473,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:473,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:474,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:474,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getData()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:474,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].<init>(double,double,double,double,double,double,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:476,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEndX()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:476,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEndY()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:476,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEndZ()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:478,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:484,1"
      Dst: "[java.util.Collection].removeAll(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:485,1"
      Dst: "[java.util.Collection].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].findNonGabrielPoint(org.locationtech.jts.triangulate.Segment)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getStart()"
    - "[org.locationtech.jts.triangulate.Segment].getEnd()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:531"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:530"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:539"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:508,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStart()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:509,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEnd()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:511,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:512,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:515,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:516,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:518,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:524,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:524,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:525,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:526,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:528,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStart()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:73,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEnd()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:82,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 154
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:155,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:156,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 406
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:407,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdTree"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.kdtree.KdTree:381,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.index.kdtree.KdTree:382,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.index.kdtree.KdNode"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.triangulate.Segment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].setOnConstraint(boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:316"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:314,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertexFactory].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:316,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:317,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].setOnConstraint(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.triangulate.ConstraintVertex"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.ConstraintVertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:338"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:335,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].insert(org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:336,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].isRepeated()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:337,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:339,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getData()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:340,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintVertex].merge(org.locationtech.jts.triangulate.ConstraintVertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - "[org.locationtech.jts.util.Debug].println()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Debug:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Debug:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Debug:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.Debug:126,1"
      Dst: "[org.locationtech.jts.util.Debug].instancePrint(java.lang.Object)"
    - Src: "org.locationtech.jts.util.Debug:127,1"
      Dst: "[org.locationtech.jts.util.Debug].println()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStartX()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:91,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStartY()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:101,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getStartZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:111,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.Segment:112,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.Vertex"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.Vertex:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getData()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].<init>(double,double,double,double,double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:42,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.triangulate.Segment:42,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.Segment:53,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEndX()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:121,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEndY()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:131,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.Segment].getEndZ()"
    functionSourceFile: "org.locationtech.jts.triangulate.Segment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.Segment:141,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.Segment:142,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Debug].isDebugging()"
    functionSourceFile: "org.locationtech.jts.util.Debug"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintEnforcementException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintEnforcementException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConstraintEnforcementException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConstraintEnforcementException:52,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintEnforcementException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConstraintEnforcementException:52,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConstraintEnforcementException:53,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConstraintEnforcementException].msgWithCoord(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConstraintEnforcementException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConstraintEnforcementException:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConstraintEnforcementException:31"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConstraintEnforcementException:30"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConstraintEnforcementException:30,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConstraintEnforcementException:30,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConstraintEnforcementException:30,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConstraintEnforcementException:30,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].addConstraintVertices()"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeConvexHull()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:408,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].computeConvexHull()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:410,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSites(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].enforceGabriel(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].findNonGabrielPoint(org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConstraintSplitPointFinder].findSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - "[org.locationtech.jts.triangulate.Segment].getStartX()"
    - "[org.locationtech.jts.triangulate.Segment].getStartY()"
    - "[org.locationtech.jts.triangulate.Segment].getStartZ()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    - "[org.locationtech.jts.triangulate.Segment].getData()"
    - "[org.locationtech.jts.triangulate.Segment].<init>(double,double,double,double,double,double,java.lang.Object)"
    - "[org.locationtech.jts.triangulate.Segment].getEndX()"
    - "[org.locationtech.jts.triangulate.Segment].getEndY()"
    - "[org.locationtech.jts.triangulate.Segment].getEndZ()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collection].removeAll(java.util.Collection)"
    - "[java.util.Collection].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:431"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:437"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:441"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:440"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:463"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:472"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:471"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:421,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:431,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:431,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:432,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:435,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].findNonGabrielPoint(org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:441,1"
      Dst: "[org.locationtech.jts.triangulate.ConstraintSplitPointFinder].findSplitPoint(org.locationtech.jts.triangulate.Segment,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:442,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].createVertex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.Segment)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:462,1"
      Dst: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.ConstraintVertex)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:463,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:463,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:464,1"
      Dst: "[org.locationtech.jts.util.Debug].println(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:472,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStartX()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:472,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStartY()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:473,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStartZ()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:473,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getX()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:473,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getY()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:474,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getZ()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:474,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getData()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:474,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].<init>(double,double,double,double,double,double,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:476,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEndX()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:476,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEndY()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:476,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEndZ()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:478,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:484,1"
      Dst: "[java.util.Collection].removeAll(java.util.Collection)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:485,1"
      Dst: "[java.util.Collection].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.ConformingDelaunayTriangulator].findNonGabrielPoint(org.locationtech.jts.triangulate.Segment)"
    functionSourceFile: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.Segment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.Segment].getStart()"
    - "[org.locationtech.jts.triangulate.Segment].getEnd()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:541"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:531"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:530"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:535"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:539"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:508,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getStart()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:509,1"
      Dst: "[org.locationtech.jts.triangulate.Segment].getEnd()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:511,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:512,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:515,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:516,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:518,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdTree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:524,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:524,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:525,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:526,1"
      Dst: "[org.locationtech.jts.index.kdtree.KdNode].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.ConformingDelaunayTriangulator:528,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$6].<init>()"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$6"
    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: "org.locationtech.jts.io.gml2.GeometryStrategies$6:219,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies$6].parse(org.locationtech.jts.io.gml2.GMLHandler$Handler,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.io.gml2.GMLHandler$Handler"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.Geometry].getSRID()"
    - "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$6:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$6:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$6:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies$6:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$6:237"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies$6:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:225,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:226,1"
      Dst: "[org.xml.sax.SAXException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:228,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:228,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:230,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:232,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:234,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getSRID()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies$6:235,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setSRID(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getSRID()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 680
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.gml2.GeometryStrategies].getSrid(org.xml.sax.Attributes,int)"
    functionSourceFile: "org.locationtech.jts.io.gml2.GeometryStrategies"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.xml.sax.Attributes"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:497"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:498"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:499"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:501"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.gml2.GeometryStrategies:509"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.gml2.GeometryStrategies:519"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:497,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:498,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:499,1"
      Dst: "[org.xml.sax.Attributes].getIndex(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:500,1"
      Dst: "[org.xml.sax.Attributes].getValue(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:503,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:504,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:506,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.io.gml2.GeometryStrategies:508,1"
      Dst: "[org.locationtech.jts.io.gml2.GeometryStrategies].extractIntSuffix(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$2].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$2:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SelectionFunctions$2].isTrue(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SelectionFunctions$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SelectionFunctions$2:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:222,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel$4].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$300(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:225"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$300(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:225,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerStylePanel$4:226,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$000(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].access$300(org.locationtech.jtstest.testbuilder.LayerStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.JCheckBox"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerStylePanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].setVertices(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.StyleList].setEnabled(org.locationtech.jtstest.testbuilder.ui.style.Style,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree$1].<init>()"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree$1"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree$1:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - "[org.locationtech.jts.index.strtree.STRtree].access$000(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].compareDoubles(double,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree$1:88,1"
      Dst: "[org.locationtech.jts.index.strtree.Boundable].getBounds()"
    - Src: "org.locationtech.jts.index.strtree.STRtree$1:88,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].access$000(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.index.strtree.STRtree$1:87,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].compareDoubles(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.strtree.STRtree].access$000(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.index.strtree.STRtree"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].centreX(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.strtree.STRtree:53,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].centreX(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:113,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 24
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:123,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:144,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 161
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getM()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 208
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setM(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:218,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[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: 5
    ICount: 17
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:236,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Coordinate:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].setOrdinate(int,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 253
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXYM].setZ(double)"
    - "[org.locationtech.jts.geom.CoordinateXY].setZ(double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[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: 6
    ICount: 19
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:262,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.Coordinate:265,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].isValid()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isFinite(double)"
    functionUses: 3
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:277,1"
      Dst: "[java.lang.Double].isFinite(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.NumberUtil].equalsWithTolerance(double,double,double)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:311,1"
      Dst: "[org.locationtech.jts.util.NumberUtil].equalsWithTolerance(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.NumberUtil].equalsWithTolerance(double,double,double)"
    functionSourceFile: "org.locationtech.jts.util.NumberUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.NumberUtil:20"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.NumberUtil:19"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.NumberUtil:20,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals3D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-1"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:329,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:330,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Coordinate].equalInZ(org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[org.locationtech.jts.util.NumberUtil].equalsWithTolerance(double,double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:341,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:341,1"
      Dst: "[org.locationtech.jts.util.NumberUtil].equalsWithTolerance(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.NumberUtil].equalsWithTolerance(double,double,double)"
    functionSourceFile: "org.locationtech.jts.util.NumberUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.NumberUtil:20"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.NumberUtil:19"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.NumberUtil:20,1"
      Dst: "[java.lang.Math].abs(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Coordinate].toString()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    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)"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].clone()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 398
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:399,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "org.locationtech.jts.geom.Coordinate:403,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.geom.Coordinate].copy()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 415
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:416,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].create()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:425,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance3D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:450,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:451,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].hashCode()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:462,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].hashCode(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:475,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:45,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure"
    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: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure].measure(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].diagonalSize(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:51,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:52,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:55,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:59,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:59,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:60,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.match.FrechetSimilarityMeasure:61,1"
      Dst: "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].diagonalSize(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:63,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance:64,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteFrechetDistance].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:165,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:166,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].diagonalSize(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:71,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:73,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:76,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:267"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:41,1"
      Dst: "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List)"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:49"
        BranchSideFuncs:
        - "add(java.util.List,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:48"
        BranchSideFuncs:
        - "add(java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:47,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:49,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:50,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:74"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:71,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:72,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].<init>(org.locationtech.jts.geomgraph.Edge,int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMinX()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMaxX()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 23
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:79,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:81,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].<init>(org.locationtech.jts.geomgraph.Edge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:82,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMinX()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:82,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:83,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:84,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMaxX()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:84,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].<init>(org.locationtech.jts.geomgraph.Edge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 26
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineSegment:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineSegment:30,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMinX()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineSegment:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineSegment:34"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineEvent:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineSegment:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineSegment:40"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineEvent:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:67"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:62,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:62,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:65,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:108"
        BranchSideFuncs:
        - "getDeleteEventIndex()"
        - "processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:107"
        BranchSideFuncs:
        - "prepareEvents()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:109,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:111,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:113,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:114,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:115,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:115,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:95"
        BranchSideFuncs:
        - "getInsertEvent()"
        - "setDeleteEventIndex(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:94"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:95,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:97,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:99,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:100,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:101,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:101,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:59"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:58"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 61
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:57"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 60
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:140"
        BranchSideFuncs:
        - "isInsert()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:122"
        BranchSideFuncs:
        - "isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
        - "getObject()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:122"
        BranchSideFuncs:
        - "computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:122,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:129,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:130,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:133,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:134,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:70"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:69"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SweepLineEvent:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SweepLineEvent:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SweepLineSegment"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SweepLineSegment:47,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:55,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:57,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:74"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:71,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:72,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:108"
        BranchSideFuncs:
        - "getDeleteEventIndex()"
        - "processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:107"
        BranchSideFuncs:
        - "prepareEvents()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:109,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:111,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:113,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:114,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:115,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:115,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:67"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:62,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:62,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:63,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:65,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(java.util.List,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:74"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:70,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:71,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:72,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].add(org.locationtech.jts.geomgraph.Edge,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].<init>(org.locationtech.jts.geomgraph.Edge,int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMinX()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMaxX()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 23
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:79,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:81,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].<init>(org.locationtech.jts.geomgraph.Edge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:82,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMinX()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:82,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(java.lang.Object,double,java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:83,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:84,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].getMaxX()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:84,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].<init>(double,org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:95"
        BranchSideFuncs:
        - "getInsertEvent()"
        - "setDeleteEventIndex(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:94"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:95,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:97,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:99,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:100,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isDelete()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:101,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getInsertEvent()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:101,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].setDeleteEventIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.jdom2.ContentList].size()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:108"
        BranchSideFuncs:
        - "getDeleteEventIndex()"
        - "processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:107"
        BranchSideFuncs:
        - "prepareEvents()"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:109,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].prepareEvents()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:111,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:113,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:114,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:115,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getDeleteEventIndex()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:115,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].processOverlaps(int,int,org.locationtech.jts.geomgraph.index.SweepLineEvent,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.geomgraph.index.SweepLineEvent"
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - "[org.jdom2.AttributeList].get(int)"
    - "[org.jdom2.ContentList].get(int)"
    - "[org.jdom2.ContentList$FilterList].get(int)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - "[org.locationtech.jts.geomgraph.index.SweepLineSegment].computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:140"
        BranchSideFuncs:
        - "isInsert()"
        - "get(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:122"
        BranchSideFuncs:
        - "isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
        - "getObject()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:122"
        BranchSideFuncs:
        - "computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:122,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].getObject()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:129,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:130,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isInsert()"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:133,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineEvent].isSameLabel(org.locationtech.jts.geomgraph.index.SweepLineEvent)"
    - Src: "org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector:134,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SweepLineSegment].computeIntersections(org.locationtech.jts.geomgraph.index.SweepLineSegment,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:40,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:50,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:59,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>(org.locationtech.jts.geom.CoordinateXY)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateXY"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:68,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].copy()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.CoordinateXY"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].<init>(org.locationtech.jts.geom.CoordinateXY)"
    functionUses: 29
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:77,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXY].<init>(org.locationtech.jts.geom.CoordinateXY)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>(org.locationtech.jts.geom.CoordinateXY)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateXY"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:68,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].create()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 86
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:87,1"
      Dst: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:40,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].setCoordinate(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate:org.locationtech.jts.geom.CoordinateXY:org.locationtech.jts.geom.CoordinateXYM].getZ()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionUses: 8
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:107,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].getOrdinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].setOrdinate(int,double)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    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: 6
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:131,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateXY:131,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.CoordinateXY:131,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.geom.CoordinateXY:131,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.CoordinateXY:131,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateXY].toString()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateXY"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateXY:136,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.CoordinateXY:136,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.CoordinateXY:136,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.CoordinateXY:136,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.StringUtil].<init>()"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    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: "org.locationtech.jts.util.StringUtil:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.StringUtil].split(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.StringUtil:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.StringUtil:51"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.StringUtil:50"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.StringUtil:51"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.StringUtil:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.StringUtil:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.StringUtil:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.StringUtil:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:41,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.util.StringUtil:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.util.StringUtil:43,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.StringUtil:43,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.StringUtil:43,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.StringUtil:44,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.locationtech.jts.util.StringUtil:46,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jts.util.StringUtil:47,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.util.StringUtil:48,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.util.StringUtil:53,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.util.StringUtil:55,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.util.StringUtil].getStackTrace(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.PrintStream].<init>(java.io.OutputStream)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - "[java.io.ByteArrayOutputStream].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:66,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jts.util.StringUtil:67,1"
      Dst: "[java.io.PrintStream].<init>(java.io.OutputStream)"
    - Src: "org.locationtech.jts.util.StringUtil:68,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - Src: "org.locationtech.jts.util.StringUtil:69,1"
      Dst: "[java.io.ByteArrayOutputStream].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.StringUtil].getStackTrace(java.lang.Throwable)"
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[java.io.LineNumberReader].<init>(java.io.Reader)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.LineNumberReader].readLine()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.StringUtil:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.StringUtil:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.StringUtil:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:74,1"
      Dst: "[org.locationtech.jts.util.StringUtil].getStackTrace(java.lang.Throwable)"
    - Src: "org.locationtech.jts.util.StringUtil:74,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.util.StringUtil:75,1"
      Dst: "[java.io.LineNumberReader].<init>(java.io.Reader)"
    - Src: "org.locationtech.jts.util.StringUtil:78,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.util.StringUtil:78,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.util.StringUtil:78,1"
      Dst: "[java.io.LineNumberReader].readLine()"
    - Src: "org.locationtech.jts.util.StringUtil:78,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.util.StringUtil:80,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.util.StringUtil].getStackTrace(java.lang.Throwable)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.PrintStream].<init>(java.io.OutputStream)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - "[java.io.ByteArrayOutputStream].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:66,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jts.util.StringUtil:67,1"
      Dst: "[java.io.PrintStream].<init>(java.io.OutputStream)"
    - Src: "org.locationtech.jts.util.StringUtil:68,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - Src: "org.locationtech.jts.util.StringUtil:69,1"
      Dst: "[java.io.ByteArrayOutputStream].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.StringUtil].toString(double)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:96,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.util.StringUtil].spaces(int)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.StringUtil].chars(char,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:101,1"
      Dst: "[org.locationtech.jts.util.StringUtil].chars(char,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.StringUtil].chars(char,int)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.StringUtil:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.StringUtil:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:110,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.StringUtil].chars(char,int)"
    functionSourceFile: "org.locationtech.jts.util.StringUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.StringUtil:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.StringUtil:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.StringUtil:110,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].setGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer].clear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.StaticGeometryContainer"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].uiInit()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].uiInit()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:45,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JCheckBox].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleEnabled()"
    - "[javax.swing.AbstractButton].setSelected(boolean)"
    - "[javax.swing.JComponent].setAlignmentX(float)"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleBorderEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getTitleFill()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRow(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendBorderEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getLegendFill()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendStatsEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isBorderEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBorderColor()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isGridEnabled()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionUses: 0
    ICount: 174
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:52,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:53,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:53,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:54,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:55,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:57,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:58,1"
      Dst: "[javax.swing.AbstractButton].setSelected(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:59,1"
      Dst: "[javax.swing.JComponent].setAlignmentX(float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:60,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isTitleBorderEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$2].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getTitleFill()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$3].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:71,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].create(java.awt.Component,java.lang.String,java.awt.Color,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LabelComponentsPanel].addRow(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$4].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendBorderEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$5].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getLegendFill()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$6].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isLegendStatsEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$7].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$8].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isBorderEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$9].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBorderColor()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$10].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].isGridEnabled()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$11].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel$12].<init>(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - "[javax.swing.AbstractButton].isSelected()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderEnabled(boolean)"
    - "[java.awt.Component].getBackground()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderColor(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBackground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleBorderEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleFill(java.awt.Color)"
    - "[javax.swing.text.JTextComponent].getText()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitle(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendBorderEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendStatsEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendMetricsEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendFill(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:163,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:164,1"
      Dst: "[javax.swing.AbstractButton].isSelected()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:165,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:166,1"
      Dst: "[java.awt.Component].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBorderColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleBorderEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitleFill(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:171,1"
      Dst: "[javax.swing.text.JTextComponent].getText()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:171,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setTitle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:173,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendBorderEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendStatsEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendMetricsEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setLegendFill(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:178,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].access$000(org.locationtech.jtstest.testbuilder.GeometryViewStylePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryViewStylePanel:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryViewStylePanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].<init>()"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.planargraph.NodeMap:33,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].add(org.locationtech.jts.planargraph.Node)"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 1
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.planargraph.Node"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:47,1"
      Dst: "[org.locationtech.jts.planargraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.planargraph.NodeMap:47,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].remove(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:56,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].find(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:62,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:70,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.planargraph.NodeMap:70,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.planargraph.NodeMap].values()"
    functionSourceFile: "org.locationtech.jts.planargraph.NodeMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.planargraph.NodeMap:78,1"
      Dst: "[java.util.Map].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format$TextMode].values()"
    functionSourceFile: "org.jdom2.output.Format$TextMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.Format$TextMode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.Format$TextMode:1016,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format$TextMode].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.output.Format$TextMode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.Format$TextMode"
    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: "org.jdom2.output.Format$TextMode:1016,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.Format$TextMode].<init>(java.lang.String,int)"
    functionSourceFile: "org.jdom2.output.Format$TextMode"
    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: "org.jdom2.output.Format$TextMode:1016,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.LineSeparator].values()"
    functionSourceFile: "org.jdom2.output.LineSeparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.LineSeparator[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.LineSeparator:114,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.LineSeparator].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.output.LineSeparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.output.LineSeparator"
    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: "org.jdom2.output.LineSeparator:114,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.LineSeparator].getDefaultLineSeparator()"
    functionSourceFile: "org.jdom2.output.LineSeparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.internal.SystemProperty].get(java.lang.String,java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.LineSeparator:165"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:171"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.LineSeparator:172"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:174"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.LineSeparator:173"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.LineSeparator:174"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:176"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.LineSeparator:175"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.LineSeparator:176"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:178"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.LineSeparator:177"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.LineSeparator:178"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:180"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.LineSeparator:179"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.LineSeparator:180"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:182"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.LineSeparator:181"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.LineSeparator:182"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:184"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.LineSeparator:183"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.LineSeparator:184"
      Branch Sides:
      - BranchSide: "org.jdom2.output.LineSeparator:187"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.LineSeparator:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.LineSeparator:164,1"
      Dst: "[org.jdom2.internal.SystemProperty].get(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.output.LineSeparator:165,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.output.LineSeparator:173,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.jdom2.internal.SystemProperty].get(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.internal.SystemProperty"
    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].getProperty(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.internal.SystemProperty:76,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.jdom2.output.LineSeparator].<init>(java.lang.String,int,java.lang.String)"
    functionSourceFile: "org.jdom2.output.LineSeparator"
    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: "org.jdom2.output.LineSeparator:194,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.LineSeparator].value()"
    functionSourceFile: "org.jdom2.output.LineSeparator"
    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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    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: "org.locationtech.jtstest.function.SpatialPredicateFunctions:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].intersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:26,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersects(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].crosses(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].crosses(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:27,1"
      Dst: "[org.locationtech.jts.geom.Geometry].crosses(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].disjoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].disjoint(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:28,1"
      Dst: "[org.locationtech.jts.geom.Geometry].disjoint(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].equals(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].equals(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:29,1"
      Dst: "[org.locationtech.jts.geom.Geometry].equals(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].contains(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].contains(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:30,1"
      Dst: "[org.locationtech.jts.geom.Geometry].contains(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].covers(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].covers(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:31,1"
      Dst: "[org.locationtech.jts.geom.Geometry].covers(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].coveredBy(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].coveredBy(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:32,1"
      Dst: "[org.locationtech.jts.geom.Geometry].coveredBy(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].within(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:33,1"
      Dst: "[org.locationtech.jts.geom.Geometry].within(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].overlaps(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].overlaps(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:34,1"
      Dst: "[org.locationtech.jts.geom.Geometry].overlaps(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].touches(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].touches(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].touches(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].interiorIntersects(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:37,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].adjacentTo(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:41,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:41,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:576"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:575"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:570,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:576,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].relateEndpoint(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:44,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:44,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.RelateOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.operation.relate.RelateOp].getIntersectionMatrix()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateOp:69,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.relate.RelateOp:70,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].getIntersectionMatrix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].<init>(org.locationtech.jts.geomgraph.GeometryGraph[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateOp:97,1"
      Dst: "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.relate.RelateOp:98,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].<init>(org.locationtech.jts.geomgraph.GeometryGraph[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.GeometryGraphOperation"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.operation.GeometryGraphOperation].setComputationPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 28
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.GeometryGraphOperation:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.GeometryGraphOperation:50"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.GeometryGraphOperation:49"
        BranchSideFuncs:
        - "setComputationPrecision(org.locationtech.jts.geom.PrecisionModel)"
        - "getPrecisionModel()"
    Callsites:
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:45,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:28,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:47,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:48,1"
      Dst: "[org.locationtech.jts.operation.GeometryGraphOperation].setComputationPrecision(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.GeometryGraphOperation:53,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].<init>(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].<init>(org.locationtech.jts.geomgraph.GeometryGraph[])"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.GeometryGraph[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[org.locationtech.jts.operation.relate.RelateNodeFactory].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:58,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:59,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:61,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateNodeFactory].<init>()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:61,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:64,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateNodeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateNodeFactory"
    linkageType: null
    functionLinenumber: 23
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateNodeFactory:24,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeFactory"
    linkageType: null
    functionLinenumber: 19
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeFactory:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.NodeFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:33,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateOp].getIntersectionMatrix()"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateOp"
    linkageType: null
    functionLinenumber: 108
    functionDepth: 16
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.RelateComputer].computeIM()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateOp:109,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].computeIM()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].computeIM()"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 15
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].set(int,int,int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].computeDisjointIM(org.locationtech.jts.geom.IntersectionMatrix,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodeRule()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].computeIntersectionNodes(int)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].copyNodesAndLabels(int)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedNodes()"
    - "[org.locationtech.jts.operation.relate.RelateComputer].computeProperIntersectionIM(org.locationtech.jts.geomgraph.index.SegmentIntersector,org.locationtech.jts.geom.IntersectionMatrix)"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].<init>()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(java.util.Iterator)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    - "[org.locationtech.jts.operation.relate.RelateComputer].insertEdgeEnds(java.util.List)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].labelNodeEdges()"
    - "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedEdges(int,int)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionUses: 1
    ICount: 56
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:84"
        BranchSideFuncs:
        - "computeIntersectionNodes(int)"
        - "computeEdgeEnds(java.util.Iterator)"
        - "computeProperIntersectionIM(org.locationtech.jts.geomgraph.index.SegmentIntersector,org.locationtech.jts.geom.IntersectionMatrix)"
        - "computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
        - "computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
        - "getEdgeIterator()"
        - "updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
        - "labelIsolatedNodes()"
        - "<init>()"
        - "copyNodesAndLabels(int)"
        - "labelNodeEdges()"
        - "labelIsolatedEdges(int,int)"
        - "insertEdgeEnds(java.util.List)"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:75,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:77,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].set(int,int,int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:80,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:80,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:82,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodeRule()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:82,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].computeDisjointIM(org.locationtech.jts.geom.IntersectionMatrix,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:85,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:89,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:91,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].computeIntersectionNodes(int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:97,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].copyNodesAndLabels(int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:103,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedNodes()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:107,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].computeProperIntersectionIM(org.locationtech.jts.geomgraph.index.SegmentIntersector,org.locationtech.jts.geom.IntersectionMatrix)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:116,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:117,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:117,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(java.util.Iterator)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:118,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].insertEdgeEnds(java.util.List)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:125,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].labelNodeEdges()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:137,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedEdges(int,int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:142,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:69,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAll(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].set(int,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 193
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodeRule()"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.BoundaryNodeRule"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].computeDisjointIM(org.locationtech.jts.geom.IntersectionMatrix,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 275
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].set(int,int,int)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].getBoundaryDim(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 22
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:281"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:280"
        BranchSideFuncs:
        - "getGeometry()"
        - "isEmpty()"
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:286"
        BranchSideFuncs:
        - "getDimension()"
        - "getBoundaryDim(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
        - "set(int,int,int)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:276,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:277,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:278,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:278,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].set(int,int,int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:279,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].getBoundaryDim(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].getBoundaryDim(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 305
    functionDepth: 13
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.BoundaryOp].hasBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.Point].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.LinearRing].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.LineString].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.Polygon].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getBoundaryDimension()"
    functionUses: 2
    ICount: 11
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:306"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:312"
        BranchSideFuncs:
        - "getBoundaryDimension()"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:306,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].hasBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:311,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:313,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getBoundaryDimension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.BoundaryOp].hasBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.BoundaryOp"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 12
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.operation.BoundaryOp].getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 17
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:90"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:89"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.operation.BoundaryOp:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.BoundaryOp:95"
        BranchSideFuncs:
        - "isEmpty()"
        - "getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    Callsites:
    - Src: "org.locationtech.jts.operation.BoundaryOp:89,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:90,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.BoundaryOp:96,1"
      Dst: "[org.locationtech.jts.operation.BoundaryOp].getBoundary(org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 354
    functionDepth: 10
    returnType: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.index.SimpleEdgeSetIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNodes(int)"
    - "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    functionUses: 4
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:354"
        BranchSideFuncs:
        - "createEdgeSetIntersector()"
        - "<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:354"
        BranchSideFuncs:
        - "createEdgeSetIntersector()"
        - "<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:354"
        BranchSideFuncs:
        - "createEdgeSetIntersector()"
        - "<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:361"
        BranchSideFuncs:
        - "computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
        - "addSelfIntersectionNodes(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:360"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.GeometryGraph:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:361"
        BranchSideFuncs:
        - "computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
        - "addSelfIntersectionNodes(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.GeometryGraph:360"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:355,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:356,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:362,1"
      Dst: "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector,boolean)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:365,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].addSelfIntersectionNodes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.GeometryGraph"
    linkageType: null
    functionLinenumber: 373
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geomgraph.GeometryGraph"
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodes()"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].setBoundaryNodes(java.util.Collection,java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - "[org.locationtech.jts.geomgraph.index.SimpleEdgeSetIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.SimpleMCSweepLineIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.SimpleSweepLineIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    - "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    functionUses: 2
    ICount: 14
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:374,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:375,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getBoundaryNodes()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:375,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].setBoundaryNodes(java.util.Collection,java.util.Collection)"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:377,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].createEdgeSetIntersector()"
    - Src: "org.locationtech.jts.geomgraph.GeometryGraph:378,1"
      Dst: "[org.locationtech.jts.geomgraph.index.EdgeSetIntersector].computeIntersections(java.util.List,java.util.List,org.locationtech.jts.geomgraph.index.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].computeIntersectionNodes(int)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    - "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Node].setLabelBoundary(int)"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 31
    EdgeCount: 74
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:227"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:242"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getLocation(int)"
        - "getEdgeIntersectionList()"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:241"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:241"
        BranchSideFuncs:
        - "addNode(org.locationtech.jts.geom.Coordinate)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:236"
        BranchSideFuncs:
        - "setLabelBoundary(int)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:235"
        BranchSideFuncs:
        - "getLabel()"
        - "isNull(int)"
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:240"
        BranchSideFuncs:
        - "setLabel(int,int)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:227,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:227,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:228,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:229,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:229,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:230,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:230,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:232,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:234,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].setLabelBoundary(int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:236,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:237,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 76
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:77,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:125,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getEdgeIntersectionList()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeIntersectionList].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeIntersectionList"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.EdgeIntersectionList:66,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 55
    functionDepth: 6
    returnType: "org.locationtech.jts.geomgraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.NodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.relate.RelateNodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.NodeMap:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:61"
        BranchSideFuncs:
        - "createNode(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.NodeMap:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:56,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:58,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeFactory].createNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:59,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.Node].setLabelBoundary(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 116
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:117"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.geomgraph.Node:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:125"
        BranchSideFuncs:
        - "getLocation(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Node:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:122,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.geomgraph.Node:130,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:171,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 3
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:107"
        BranchSideFuncs:
        - "<init>(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Node:106"
        BranchSideFuncs:
        - "setLocation(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:104,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Node:107,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].copyNodesAndLabels(int)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 17
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:217"
        BranchSideFuncs:
        - "addNode(org.locationtech.jts.geom.Coordinate)"
        - "getLabel()"
        - "next()"
        - "getCoordinate()"
        - "getLocation(int)"
        - "setLabel(int,int)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:211,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:211,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:212,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:213,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:213,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:214,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:214,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:214,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.PlanarGraph"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.PlanarGraph:98,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedNodes()"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 400
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedNode(org.locationtech.jts.geomgraph.Node,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 23
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:413"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getLabel()"
        - "next()"
        - "getGeometryCount()"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:412"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:402"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "isIsolated()"
        - "getGeometryCount()"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:401"
        BranchSideFuncs:
        - "isTrue(boolean,java.lang.String)"
        - "getLabel()"
        - "next()"
        - "getGeometryCount()"
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:406"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:412"
        BranchSideFuncs:
        - "isNull(int)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:411"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:410"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:409"
        BranchSideFuncs:
        - "labelIsolatedNode(org.locationtech.jts.geomgraph.Node,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:401,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:401,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:402,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:403,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:405,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:405,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:406,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:407,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:408,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedNode(org.locationtech.jts.geomgraph.Node,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Map].values()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:98,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 165
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Label:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:168"
        BranchSideFuncs:
        - "isNull()"
      - BranchSide: "org.locationtech.jts.geomgraph.Label:167"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geomgraph.Label:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Label:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Label:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:167,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.Assert:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.util.Assert:48"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.util.Assert:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.Assert:46"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "org.locationtech.jts.util.Assert:45"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:43,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>()"
    - Src: "org.locationtech.jts.util.Assert:46,1"
      Dst: "[org.locationtech.jts.util.AssertionFailedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Node:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Node:60"
        BranchSideFuncs:
        - "getGeometryCount()"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Node:61,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getGeometryCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedNode(org.locationtech.jts.geomgraph.Node,int)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 419
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].setAllLocations(int,int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:420,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:420,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:420,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:421,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:421,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setAllLocations(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.PointLocator"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule$EndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MonoValentEndPointBoundaryNodeRule:org.locationtech.jts.algorithm.BoundaryNodeRule$MultiValentEndPointBoundaryNodeRule].isInBoundary(int)"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    functionUses: 7
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:93"
        BranchSideFuncs:
        - "locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:97"
        BranchSideFuncs:
        - "locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:96"
        BranchSideFuncs:
        - "computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
        - "isInBoundary(int)"
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:101"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.PointLocator:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:105"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.PointLocator:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.PointLocator:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.algorithm.PointLocator:91,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateOnLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:94,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locateInPolygon(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:99,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].computeLocation(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.PointLocator:100,1"
      Dst: "[org.locationtech.jts.algorithm.BoundaryNodeRule].isInBoundary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.geomgraph.Label].setAllLocations(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:136,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.TopologyLocation].setAllLocations(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.TopologyLocation"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.TopologyLocation:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.TopologyLocation:127"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].computeProperIntersectionIM(org.locationtech.jts.geomgraph.index.SegmentIntersector,org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperIntersection()"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperInteriorIntersection()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 37
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:195"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:194"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:198"
        BranchSideFuncs:
        - "setAtLeast(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:198"
        BranchSideFuncs:
        - "setAtLeast(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:197"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:157,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:157,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:159,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperIntersection()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:160,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperInteriorIntersection()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:168,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 15
    BBCount: 21
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperIntersection()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 91
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperInteriorIntersection()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 98
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: 258
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 6
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:259,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:262,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:262,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionValue(char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:262,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeast(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(java.util.Iterator)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBuilder"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 11
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBuilder:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:49"
        BranchSideFuncs:
        - "next()"
        - "computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBuilder:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:44,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:45,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBuilder:47,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBuilder].computeEdgeEnds(org.locationtech.jts.geomgraph.Edge,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].insertEdgeEnds(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 11
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:152"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.EdgeEnd)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:148,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:148,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:149,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:150,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.NodeMap].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.geomgraph.NodeMap"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.NodeMap:84,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:85,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.NodeMap:86,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].add(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].labelNodeEdges()"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 322
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:323"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:329"
        BranchSideFuncs:
        - "getEdges()"
        - "computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:328"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:323,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:323,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:324,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:325,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:325,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Node"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.EdgeEndStar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedEdges(int,int)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 360
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Edge].isIsolated()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedEdge(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geom.Geometry)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:368"
        BranchSideFuncs:
        - "isIsolated()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:367"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:367"
        BranchSideFuncs:
        - "getGeometry()"
        - "labelIsolatedEdge(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:366"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:361,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeIterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:361,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:362,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:363,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isIsolated()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:364,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:364,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedEdge(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:365,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Edge].isIsolated()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 141
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].labelIsolatedEdge(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].setAllLocations(int,int)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    functionUses: 1
    ICount: 15
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:384"
        BranchSideFuncs:
        - "getLabel()"
        - "setAllLocations(int,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:377,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:381,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:381,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:382,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:382,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setAllLocations(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 73
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:74"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.relate.RelateComputer].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateComputer"
    linkageType: null
    functionLinenumber: 336
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    - "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - "[org.locationtech.jts.operation.relate.RelateNode].updateIMFromEdges(org.locationtech.jts.geom.IntersectionMatrix)"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 20
    EdgeCount: 68
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:341"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
    - Branch String: "org.locationtech.jts.operation.relate.RelateComputer:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:350"
        BranchSideFuncs:
        - "next()"
        - "updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
        - "updateIMFromEdges(org.locationtech.jts.geom.IntersectionMatrix)"
      - BranchSide: "org.locationtech.jts.operation.relate.RelateComputer:349"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:337,1"
      Dst: "[java.util.ArrayList].iterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:337,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:338,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:339,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:342,1"
      Dst: "[org.locationtech.jts.geomgraph.NodeMap].iterator()"
    - Src: "org.locationtech.jts.operation.relate.RelateComputer:346,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateNode].updateIMFromEdges(org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.relate.RelateNode].updateIMFromEdges(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateNode"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateNode:46,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundleStar"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBundle].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:64"
        BranchSideFuncs:
        - "next()"
        - "updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:60,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:60,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:61,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:62,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBundle].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundle].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundle"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].updateIM(org.locationtech.jts.geomgraph.Label,org.locationtech.jts.geom.IntersectionMatrix)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:178,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].updateIM(org.locationtech.jts.geomgraph.Label,org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Edge].updateIM(org.locationtech.jts.geomgraph.Label,org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    functionUses: 2
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:44"
        BranchSideFuncs:
        - "getLocation(int,int)"
        - "setAtLeastIfValid(int,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:39,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:39,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].setAtLeastIfValid(int,int,int)"
    - Src: "org.locationtech.jts.geomgraph.Edge:40,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:576"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:575"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:570,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:576,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].relateMultiValent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:47,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:47,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.RelateOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.operation.relate.RelateOp].getIntersectionMatrix()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateOp:69,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.relate.RelateOp:70,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].getIntersectionMatrix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:576"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:575"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:570,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:576,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.SpatialPredicateFunctions].relateMonoValent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.SpatialPredicateFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:50,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jtstest.function.SpatialPredicateFunctions:50,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.RelateOp].relate(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    functionSourceFile: "org.locationtech.jts.operation.relate.RelateOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.IntersectionMatrix"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.RelateOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - "[org.locationtech.jts.operation.relate.RelateOp].getIntersectionMatrix()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.RelateOp:69,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.algorithm.BoundaryNodeRule)"
    - Src: "org.locationtech.jts.operation.relate.RelateOp:70,1"
      Dst: "[org.locationtech.jts.operation.relate.RelateOp].getIntersectionMatrix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    functionSourceFile: "org.locationtech.jts.geom.IntersectionMatrix"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:571"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:576"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:575"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.IntersectionMatrix:572"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.IntersectionMatrix:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:570,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:573,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "org.locationtech.jts.geom.IntersectionMatrix:576,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker$ThreadVar].<init>(java.lang.Thread)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingWorker$ThreadVar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.SwingWorker$ThreadVar:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker$ThreadVar].get()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingWorker$ThreadVar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Thread"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker$ThreadVar].clear()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.SwingWorker$ThreadVar"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$10].<init>(org.locationtech.jtstest.testbuilder.WKTPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.WKTPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$10:329,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel$10].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel$10"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].aPasteButton_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel$10:331,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].aPasteButton_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].aPasteButton_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.WKTPanel].paste(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:458,1"
      Dst: "[org.locationtech.jtstest.testbuilder.WKTPanel].paste(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.WKTPanel].paste(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.WKTPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].pasteGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:466,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].pasteGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:467,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInput()"
    - Src: "org.locationtech.jtstest.testbuilder.WKTPanel:470,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].reportException(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].<init>(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    functionSourceFile: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 2
    ICount: 12
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter:51,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    - Src: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter:51,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 422
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Math].round(double)"
    functionUses: 16
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:423"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:424"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:429"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:428"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:438"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:437"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:430"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:434"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:423,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:431,1"
      Dst: "[java.lang.Math].round(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isDone()"
    functionSourceFile: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isGeometryChanged()"
    functionSourceFile: "org.locationtech.jts.precision.CoordinatePrecisionReducerFilter"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl$1].<init>(java.awt.Component,java.lang.String,javax.swing.JPanel,org.locationtech.jtstest.testbuilder.ColorControl$ColorListener)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "javax.swing.JPanel"
    - "org.locationtech.jtstest.testbuilder.ColorControl$ColorListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseAdapter].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl$1:40,1"
      Dst: "[java.awt.event.MouseAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl$1].mouseClicked(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ColorControl].getColor(javax.swing.JPanel)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl].access$000(java.awt.Component,java.lang.String,java.awt.Color)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.ColorControl$ColorListener].colorChanged(java.awt.Color)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ColorControl$1:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ColorControl$1:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ColorControl$1:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl$1:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].getColor(javax.swing.JPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl$1:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].access$000(java.awt.Component,java.lang.String,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl$1:45,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl$1:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl$ColorListener].colorChanged(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].getColor(javax.swing.JPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "javax.swing.JPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].getBackground()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:62,1"
      Dst: "[java.awt.Component].getBackground()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ColorControl].access$000(java.awt.Component,java.lang.String,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ColorControl"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ColorControl].showColorChooser(java.awt.Component,java.lang.String,java.awt.Color)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ColorControl:24,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ColorControl].showColorChooser(java.awt.Component,java.lang.String,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].<init>(double,double,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode"
    linkageType: null
    functionLinenumber: 21
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode:22,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode].query(double,double,org.locationtech.jts.index.ItemVisitor)"
    functionSourceFile: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode"
    linkageType: null
    functionLinenumber: 29
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "org.locationtech.jts.index.ItemVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].intersects(double,double)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SpatialPartition$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.simplify.LineSegmentVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.locate.IndexedPointInAreaLocator$SegmentVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.union.SparsePolygonUnion$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.index.ArrayListVisitor].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.operation.buffer.SegmentMCIndex$1].visitItem(java.lang.Object)"
    - "[org.locationtech.jts.index.ItemVisitor].visitItem(java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode:30"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode:32"
        BranchSideFuncs:
        - "visitItem(java.lang.Object)"
    Callsites:
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode:30,1"
      Dst: "[org.locationtech.jts.index.intervalrtree.IntervalRTreeNode].intersects(double,double)"
    - Src: "org.locationtech.jts.index.intervalrtree.IntervalRTreeLeafNode:33,1"
      Dst: "[org.locationtech.jts.index.ItemVisitor].visitItem(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.UserDataFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.UserDataFunctions"
    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: "org.locationtech.jtstest.function.UserDataFunctions:18,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.UserDataFunctions].area(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.UserDataFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    - "[java.lang.Double].valueOf(double)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.UserDataFunctions:24"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.UserDataFunctions:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.UserDataFunctions:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:21,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:22,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:24,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:24,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:24,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:25,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:25,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:25,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:134,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:135,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.UserDataFunctions].length(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.UserDataFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[java.lang.Double].valueOf(double)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.UserDataFunctions:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.UserDataFunctions:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.UserDataFunctions:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:31,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:32,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:34,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:34,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:34,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:35,1"
      Dst: "[java.lang.Double].valueOf(double)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:134,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:135,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.UserDataFunctions].numPoints(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.UserDataFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.UserDataFunctions:44"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.UserDataFunctions:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.UserDataFunctions:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:41,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:42,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:44,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:44,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:44,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:45,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:45,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:134,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:135,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.UserDataFunctions].index(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.UserDataFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.UserDataFunctions:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.UserDataFunctions:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:51,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:52,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:54,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:55,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:55,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jtstest.function.UserDataFunctions:55,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.FunctionsUtil].elements(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.FunctionsUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.FunctionsUtil:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.FunctionsUtil:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:134,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:135,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jtstest.function.FunctionsUtil:136,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].intersect(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector:org.locationtech.jts.noding.InteriorIntersectionFinderAdder:org.locationtech.jts.noding.IntersectionAdder:org.locationtech.jts.noding.IntersectionFinderAdder:org.locationtech.jts.noding.NodingIntersectionFinder:org.locationtech.jts.noding.SegmentIntersectionDetector:org.locationtech.jts.noding.snap.SnappingIntersectionAdder:org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    functionUses: 1
    ICount: 21
    EdgeCount: 59
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:59"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:58"
        BranchSideFuncs:
        - "intersect(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentIntersector)"
        - "next()"
        - "isDone()"
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:57"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:57"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:50,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:50,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:51,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:54,1"
      Dst: "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].intersect(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:55,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].intersect(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.IntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector:org.locationtech.jts.noding.InteriorIntersectionFinderAdder:org.locationtech.jts.noding.IntersectionAdder:org.locationtech.jts.noding.IntersectionFinderAdder:org.locationtech.jts.noding.NodingIntersectionFinder:org.locationtech.jts.noding.SegmentIntersectionDetector:org.locationtech.jts.noding.snap.SnappingIntersectionAdder:org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    functionUses: 1
    ICount: 23
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:71"
        BranchSideFuncs:
        - "isDone()"
        - "processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:70"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:71,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:75,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector].intersect(org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentString,org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentString"
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.IntersectionAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector:org.locationtech.jts.noding.InteriorIntersectionFinderAdder:org.locationtech.jts.noding.IntersectionAdder:org.locationtech.jts.noding.IntersectionFinderAdder:org.locationtech.jts.noding.NodingIntersectionFinder:org.locationtech.jts.noding.SegmentIntersectionDetector:org.locationtech.jts.noding.snap.SnappingIntersectionAdder:org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder:org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector:org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    functionUses: 1
    ICount: 23
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:81"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:80"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:71"
        BranchSideFuncs:
        - "isDone()"
        - "processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:70"
        BranchSideFuncs:
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:74"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:71,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:75,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    - Src: "org.locationtech.jts.noding.SimpleSegmentSetMutualIntersector:76,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:46,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].getInteriorIntersections()"
    functionSourceFile: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].processIntersections(org.locationtech.jts.noding.SegmentString,int,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 4
    ICount: 39
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:66"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:66"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:84"
        BranchSideFuncs:
        - "isInteriorIntersection()"
      - BranchSide: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:84"
        BranchSideFuncs:
        - "getIntersectionNum()"
      - BranchSide: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:79"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:67,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:72,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:75,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:76,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isInteriorIntersection()"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:77,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:78,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:78,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder:80,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 162
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    functionUses: 8
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.NodedSegmentString:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.NodedSegmentString:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.NodedSegmentString:163,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.noding.NodedSegmentString:164,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.algorithm.LineIntersector,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].isDone()"
    functionSourceFile: "org.locationtech.jts.noding.InteriorIntersectionFinderAdder"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].<init>(org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:48,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].getTolerance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].forceConvex(boolean)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSites(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:79,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:80,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:81,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].insertSite(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isVertexOfEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isOnEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].delete(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].swap(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lPrev()"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:107"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:136"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:102,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].locate(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:104,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isVertexOfEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:108,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isOnEdge(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:111,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:112,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:112,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].delete(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:119,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:119,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].makeEdge(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:120,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].splice(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:123,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:123,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].connect(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:125,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].rightOf(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:138,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].isInCircle(org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:142,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:146,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:154,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].swap(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:163,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].lPrev()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveBoundary(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveAtOrigin(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:181"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:175,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:175,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:176,1"
      Dst: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveAtOrigin(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:178,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:179,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isConcaveAtOrigin(org.locationtech.jts.triangulate.quadedge.QuadEdge)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:191,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].orig()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:191,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.Vertex].getCoordinate()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:192,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:192,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:193,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:194,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator].isBetweenFrameAndInserted(org.locationtech.jts.triangulate.quadedge.QuadEdge,org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionSourceFile: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    - "org.locationtech.jts.triangulate.quadedge.Vertex"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oNext()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:207,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].dest()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:208,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].oPrev()"
    - Src: "org.locationtech.jts.triangulate.IncrementalDelaunayTriangulator:209,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeSubdivision].isFrameVertex(org.locationtech.jts.triangulate.quadedge.Vertex)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].octagonalEnvelope(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:32,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:32,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:32,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:108,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].<init>(org.locationtech.jts.geom.OctagonalEnvelope)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:132,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].<init>(org.locationtech.jts.geom.OctagonalEnvelope)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].<init>(org.locationtech.jts.geom.OctagonalEnvelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.OctagonalEnvelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter:348,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:294,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:298,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:310,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:311,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:320,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:321,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:330,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:331,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:334,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:335,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:340,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:340,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:121,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 26
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateList:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:150"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateList:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateList:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:145,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.CoordinateList:146,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.geom.CoordinateList:147,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.CoordinateList:150,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 505
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:506,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    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: "org.locationtech.jts.geom.OctagonalEnvelope:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:70,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:71,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:81,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:82,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:91,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.OctagonalEnvelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.OctagonalEnvelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.OctagonalEnvelope)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:100,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.OctagonalEnvelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:108,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMinA()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMaxA()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMinB()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].getMaxB()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:121,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].setToNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].<init>(org.locationtech.jts.geom.OctagonalEnvelope)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:132,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].<init>(org.locationtech.jts.geom.OctagonalEnvelope)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:132,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getY(int)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:137,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:138,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:139,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:140,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.OctagonalEnvelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.OctagonalEnvelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 0
    ICount: 81
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:160"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:162"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:165"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:166"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:165"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:166"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:147,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 21
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:121,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:173,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 1
    ICount: 57
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:188,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:189,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:191,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:179,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:179,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:179,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:180,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:181,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 1
    ICount: 57
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:188,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:189,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:191,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandToInclude(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 187
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.OctagonalEnvelope"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 1
    ICount: 57
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:191"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:202"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:203"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:204"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:204"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:205"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:209"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:208"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:188,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:189,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:191,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 19
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].expandBy(double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isValid()"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].setToNull()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:217"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:216,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:229,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isValid()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:230,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].setToNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:121,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isValid()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:240,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].setToNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isValid()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:240,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].intersects(org.locationtech.jts.geom.OctagonalEnvelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.OctagonalEnvelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:248"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:250"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:252"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:251"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:252"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:254"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:253"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:256"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:255"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:257"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:256"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:258"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:259"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:249,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 20
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:121,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].intersects(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:265"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:269,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:270,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].computeA(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].computeB(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].contains(org.locationtech.jts.geom.OctagonalEnvelope)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.OctagonalEnvelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:281"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:280,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 14
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:121,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.OctagonalEnvelope].toGeometry(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.OctagonalEnvelope"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[java.util.ArrayList].size()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:298"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:333"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:332"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.OctagonalEnvelope:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.OctagonalEnvelope:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:294,1"
      Dst: "[org.locationtech.jts.geom.OctagonalEnvelope].isNull()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:295,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:298,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:310,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:311,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:320,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:321,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].add(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:330,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:331,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:334,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:335,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:340,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.OctagonalEnvelope:340,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.input.sax.XMLReaders$DTDSingleton].values()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$DTDSingleton"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders$DTDSingleton[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders$DTDSingleton:128,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$DTDSingleton].valueOf(java.lang.String)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$DTDSingleton"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.input.sax.XMLReaders$DTDSingleton"
    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: "org.jdom2.input.sax.XMLReaders$DTDSingleton:128,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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$DTDSingleton].<init>(java.lang.String,int)"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$DTDSingleton"
    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)"
    - "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.sax.XMLReaders$DTDSingleton:133,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "org.jdom2.input.sax.XMLReaders$DTDSingleton:134,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].newInstance()"
    - Src: "org.jdom2.input.sax.XMLReaders$DTDSingleton:136,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setNamespaceAware(boolean)"
    - Src: "org.jdom2.input.sax.XMLReaders$DTDSingleton:138,1"
      Dst: "[javax.xml.parsers.SAXParserFactory].setValidating(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$DTDSingleton].supply()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$DTDSingleton"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.xml.parsers.SAXParserFactory"
    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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.XMLReaders$DTDSingleton].validates()"
    functionSourceFile: "org.jdom2.input.sax.XMLReaders$DTDSingleton"
    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
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ImageUtil"
    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: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].saveImageToClipboard(java.awt.Component,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ImageUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].getSize()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - "[java.awt.Image].getGraphics()"
    - "[java.awt.Component].paint(java.awt.Graphics)"
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.OutputStream)"
    - "[java.awt.Toolkit].getDefaultToolkit()"
    - "[java.awt.Toolkit].getSystemClipboard()"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[org.locationtech.jtstest.testbuilder.ui.ClipImage].<init>(byte[])"
    - "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:34,1"
      Dst: "[java.awt.Component].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:35,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:37,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:37,1"
      Dst: "[java.awt.Component].paint(java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:38,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:39,1"
      Dst: "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.OutputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:41,1"
      Dst: "[java.awt.Toolkit].getDefaultToolkit()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:41,1"
      Dst: "[java.awt.Toolkit].getSystemClipboard()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:42,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:42,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ClipImage].<init>(byte[])"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:43,1"
      Dst: "[java.awt.datatransfer.Clipboard].setContents(java.awt.datatransfer.Transferable,java.awt.datatransfer.ClipboardOwner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ImageUtil].writeImage(java.awt.Component,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ImageUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Component"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Component].getSize()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - "[java.awt.Image].getGraphics()"
    - "[java.awt.Component].paint(java.awt.Graphics)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.File)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:51,1"
      Dst: "[java.awt.Component].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:52,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:54,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:54,1"
      Dst: "[java.awt.Component].paint(java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:56,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ImageUtil:56,1"
      Dst: "[javax.imageio.ImageIO].write(java.awt.image.RenderedImage,java.lang.String,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.ShortCircuitedGeometryVisitor].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:132,1"
      Dst: "[org.locationtech.jts.geom.util.ShortCircuitedGeometryVisitor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor].intersects()"
    functionSourceFile: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor"
    linkageType: null
    functionLinenumber: 144
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor].visit(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor"
    linkageType: null
    functionLinenumber: 149
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 1
    ICount: 41
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:157"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:156"
        BranchSideFuncs:
        - "contains(org.locationtech.jts.geom.Envelope)"
    - Branch String: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:170"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:169"
        BranchSideFuncs:
        - "getMinX()"
    - Branch String: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:175"
        BranchSideFuncs:
        - "getMaxX()"
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:174"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:174"
        BranchSideFuncs:
        - "getMinY()"
    - Branch String: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:180"
        BranchSideFuncs:
        - "getMaxY()"
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:150,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:153,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:170,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:171,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:175,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor:176,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 551
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 19
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:551"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:552"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:553"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:552"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:552,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 660
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:661,1"
      Dst: "[org.locationtech.jts.geom.Envelope].covers(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor].isDone()"
    functionSourceFile: "org.locationtech.jts.operation.predicate.EnvelopeIntersectsVisitor"
    linkageType: null
    functionLinenumber: 183
    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: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeGraph"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:30,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeGraph"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.linemerge.LineMergeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.linemerge.LineMergeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    functionUses: 2
    ICount: 29
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeGraph:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:41"
        BranchSideFuncs:
        - "removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeGraph:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:46"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
        - "<init>(org.locationtech.jts.geom.LineString)"
        - "add(org.locationtech.jts.planargraph.Edge)"
        - "setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
        - "getNode(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:40,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:42,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:42,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].removeRepeatedPoints(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:49,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:51,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeDirectedEdge].<init>(org.locationtech.jts.planargraph.Node,org.locationtech.jts.planargraph.Node,org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:55,1"
      Dst: "[org.locationtech.jts.operation.linemerge.LineMergeEdge].<init>(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:56,1"
      Dst: "[org.locationtech.jts.planargraph.Edge].setDirectedEdges(org.locationtech.jts.planargraph.DirectedEdge,org.locationtech.jts.planargraph.DirectedEdge)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:57,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.linemerge.LineMergeGraph].getNode(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.linemerge.LineMergeGraph"
    linkageType: null
    functionLinenumber: 60
    functionDepth: 2
    returnType: "org.locationtech.jts.planargraph.Node"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.linemerge.LineMergeGraph:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:67"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "add(org.locationtech.jts.planargraph.Node)"
      - BranchSide: "org.locationtech.jts.operation.linemerge.LineMergeGraph:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:61,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].findNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:63,1"
      Dst: "[org.locationtech.jts.planargraph.Node].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.linemerge.LineMergeGraph:64,1"
      Dst: "[org.locationtech.jts.planargraph.PlanarGraph].add(org.locationtech.jts.planargraph.Node)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].<init>()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal"
    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: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:25,1"
      Dst: "[java.util.LinkedList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].init(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].addLast(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:30,1"
      Dst: "[java.util.LinkedList].addLast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].init(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:39,1"
      Dst: "[java.util.LinkedList].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].visitAll(org.locationtech.jts.triangulate.quadedge.TraversalVisitor)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.TraversalVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.LinkedList].removeFirst()"
    - "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].process(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,org.locationtech.jts.triangulate.quadedge.TraversalVisitor)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:60"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:56,1"
      Dst: "[java.util.AbstractCollection].isEmpty()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:57,1"
      Dst: "[java.util.LinkedList].removeFirst()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:58,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].process(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,org.locationtech.jts.triangulate.quadedge.TraversalVisitor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].process(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,org.locationtech.jts.triangulate.quadedge.TraversalVisitor)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle"
    - "org.locationtech.jts.triangulate.quadedge.TraversalVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getNeighbours()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getEdge(int)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getData()"
    - "[org.locationtech.jts.triangulate.quadedge.TraversalVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,int,org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle)"
    - "[java.util.LinkedList].addLast(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:63,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getNeighbours()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getEdge(int)"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getData()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:68,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TraversalVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,int,org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle)"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:69,1"
      Dst: "[java.util.LinkedList].addLast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getNeighbours()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getEdge(int)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getData()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle:319,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getEdge(int)"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle:319,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle:319,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getEdge(int)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getData()"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.QuadEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal].process(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,org.locationtech.jts.triangulate.quadedge.TraversalVisitor)"
    functionSourceFile: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle"
    - "org.locationtech.jts.triangulate.quadedge.TraversalVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getNeighbours()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getEdge(int)"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getData()"
    - "[org.locationtech.jts.triangulate.quadedge.TraversalVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,int,org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle)"
    - "[java.util.LinkedList].addLast(java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:71"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:63,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getNeighbours()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle].getEdge(int)"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].sym()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:65,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.QuadEdge].getData()"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:68,1"
      Dst: "[org.locationtech.jts.triangulate.quadedge.TraversalVisitor].visit(org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle,int,org.locationtech.jts.triangulate.quadedge.QuadEdgeTriangle)"
    - Src: "org.locationtech.jts.triangulate.quadedge.EdgeConnectedTriangleTraversal:69,1"
      Dst: "[java.util.LinkedList].addLast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].<init>(org.locationtech.jts.operation.overlayarea.OverlayArea,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor"
    linkageType: null
    functionLinenumber: 236
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlayarea.OverlayArea"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor:237,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].getArea()"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor"
    linkageType: null
    functionLinenumber: 242
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor].visitItem(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor"
    linkageType: null
    functionLinenumber: 246
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$200(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea$IntersectionVisitor:248,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$200(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayarea.OverlayArea].access$200(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayarea.OverlayArea"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 7
    returnType: "double"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayarea.OverlayArea:64,1"
      Dst: "[org.locationtech.jts.operation.overlayarea.OverlayArea].areaForIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.TextOnlyFilter].<init>()"
    functionSourceFile: "org.jdom2.filter.TextOnlyFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.TextOnlyFilter:67,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.TextOnlyFilter].filter(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.TextOnlyFilter"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "org.jdom2.Text"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getCType()"
    functionUses: 9
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.jdom2.filter.TextOnlyFilter:76"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.TextOnlyFilter:82"
        BranchSideFuncs:
        - "getCType()"
      - BranchSide: "org.jdom2.filter.TextOnlyFilter:81"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.filter.TextOnlyFilter:78"
      Branch Sides:
      - BranchSide: "org.jdom2.filter.TextOnlyFilter:82"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.filter.TextOnlyFilter:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.filter.TextOnlyFilter:78,1"
      Dst: "[org.jdom2.Content].getCType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.filter.TextOnlyFilter].hashCode()"
    functionSourceFile: "org.jdom2.filter.TextOnlyFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Object].hashCode()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.TextOnlyFilter:87,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.jdom2.filter.TextOnlyFilter:87,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.TextOnlyFilter].equals(java.lang.Object)"
    functionSourceFile: "org.jdom2.filter.TextOnlyFilter"
    linkageType: null
    functionLinenumber: 91
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isAdjacentSegments(int,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 33
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:34,1"
      Dst: "[java.lang.Math].abs(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].<init>(org.locationtech.jts.algorithm.LineIntersector,boolean,boolean)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:60,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].setBoundaryNodes(java.util.Collection,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isDone()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 74
    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: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].getProperIntersectionPoint()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasIntersection()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperIntersection()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 91
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].hasProperInteriorIntersection()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 98
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isAdjacentSegments(int,int)"
    - "[org.locationtech.jts.geomgraph.Edge].isClosed()"
    - "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:129"
        BranchSideFuncs:
        - "getIntersectionNum()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:129"
        BranchSideFuncs:
        - "isAdjacentSegments(int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:119"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:129"
        BranchSideFuncs:
        - "getNumPoints()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120"
        BranchSideFuncs:
        - "getNumPoints()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:117,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersectionNum()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:118,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isAdjacentSegments(int,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:120,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isClosed()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:121,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].addIntersections(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    - "org.locationtech.jts.geomgraph.Edge"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    functionUses: 3
    ICount: 60
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:144"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:144"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:143"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "hasIntersection()"
        - "computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:162"
        BranchSideFuncs:
        - "setIsolated(boolean)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:161"
        BranchSideFuncs:
        - "isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166"
        BranchSideFuncs:
        - "isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:180"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:183"
        BranchSideFuncs:
        - "addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:182"
        BranchSideFuncs:
        - "isProper()"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs:
        - "copy()"
        - "getIntersection(int)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:191"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:145,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinate(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:150,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].computeIntersection(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:156,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].hasIntersection()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:158,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].setIsolated(boolean)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:166,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isTrivialIntersection(org.locationtech.jts.geomgraph.Edge,int,org.locationtech.jts.geomgraph.Edge,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:177,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:178,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isProper()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:180,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].addIntersections(org.locationtech.jts.algorithm.LineIntersector,int,int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:184,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].getIntersection(int)"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:184,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 18
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPoint(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "java.util.Collection[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:197"
        BranchSideFuncs:
        - "isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196"
        BranchSideFuncs:
        - "isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:198"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:196,1"
      Dst: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geomgraph.index.SegmentIntersector].isBoundaryPointInternal(org.locationtech.jts.algorithm.LineIntersector,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.SegmentIntersector"
    linkageType: null
    functionLinenumber: 202
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.algorithm.LineIntersector].isIntersection(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 14
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:208"
        BranchSideFuncs:
        - "isIntersection(org.locationtech.jts.geom.Coordinate)"
        - "next()"
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.SegmentIntersector:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.SegmentIntersector:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:203,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:203,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:204,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:205,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.geomgraph.index.SegmentIntersector:206,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].isIntersection(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion$1].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion$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: "org.locationtech.jts.operation.union.CascadedPolygonUnion$1:56,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion$1].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 26
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion$1:59,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.union.CascadedPolygonUnion$1:62,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].union(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 25
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:47,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp"
    linkageType: null
    functionLinenumber: 35
    functionDepth: 24
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].getResultGeometry(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:36,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:37,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp"
    linkageType: null
    functionLinenumber: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp].getResultGeometry(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp"
    linkageType: null
    functionLinenumber: 69
    functionDepth: 23
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:89"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:101"
        BranchSideFuncs:
        - "overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:75,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp:95,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp"
    linkageType: null
    functionLinenumber: 34
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].getResultGeometry(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:35,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:36,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].computeSnapTolerance()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:67,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].computeSnapTolerance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].computeSnapTolerance()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeOverlaySnapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:71,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeOverlaySnapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeOverlaySnapTolerance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper"
    linkageType: null
    functionLinenumber: 87
    functionDepth: 4
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeOverlaySnapTolerance(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Math].min(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:88,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeOverlaySnapTolerance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:88,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeOverlaySnapTolerance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeSizeBasedSnapTolerance(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionUses: 2
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:70"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:75"
        BranchSideFuncs:
        - "getScale()"
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:58,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeSizeBasedSnapTolerance(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:69,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:70,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getType()"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:71,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].computeSizeBasedSnapTolerance(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper"
    linkageType: null
    functionLinenumber: 79
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[java.lang.Math].min(double,double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:80,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:81,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:81,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:81,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getHeight()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 288
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:292"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:289,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Envelope].getWidth()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:277,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getType()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 298
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel$Type"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 271
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].getResultGeometry(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 21
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].snap(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].prepareResult(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:79,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].snap(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:80,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:81,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].prepareResult(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].snap(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 14
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].removeCommonBits(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].snap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:95,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].removeCommonBits(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:100,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].snap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].removeCommonBits(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 23
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:123,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:124,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:127,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:127,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].<init>()"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:52,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:68,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:69,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].getCommonCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].removeCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 2
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Branch String: "org.locationtech.jts.precision.CommonBitsRemover:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.precision.CommonBitsRemover:87"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "geometryChanged()"
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:88,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:91,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:93,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].snap(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Geometry[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].snapTo(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:102,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:103,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].snapTo(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper"
    linkageType: null
    functionLinenumber: 142
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:143,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].snapTo(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].extractTargetCoordinates(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].<init>(double,org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:158,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].extractTargetCoordinates(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:160,1"
      Dst: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].<init>(double,org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:161,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.snap.GeometrySnapper].extractTargetCoordinates(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[java.util.TreeSet].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:193,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:194,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:196,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.snap.GeometrySnapper:198,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapTransformer].<init>(double,org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapTransformer"
    linkageType: null
    functionLinenumber: 235
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapTransformer:236,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryTransformer].transform(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryTransformer"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.precision.PrecisionReducerTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.VWSimplifier$VWTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.DouglasPeuckerSimplifier$DPTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.densify.Densifier$DensifyTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - "[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: 55
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:120"
        BranchSideFuncs:
        - "transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:122"
        BranchSideFuncs:
        - "transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:124"
        BranchSideFuncs:
        - "transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:126"
        BranchSideFuncs:
        - "transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:128"
        BranchSideFuncs:
        - "transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:127"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:130"
        BranchSideFuncs:
        - "transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:129"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:132"
        BranchSideFuncs:
        - "transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryTransformer:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:135"
        BranchSideFuncs:
        - "transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.geom.util.GeometryTransformer:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:119,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPoint(org.locationtech.jts.geom.Point,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:121,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPoint(org.locationtech.jts.geom.MultiPoint,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:123,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLinearRing(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:125,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformLineString(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:127,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiLineString(org.locationtech.jts.geom.MultiLineString,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:129,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformPolygon(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:131,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformMultiPolygon(org.locationtech.jts.geom.MultiPolygon,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:133,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryTransformer].transformGeometryCollection(org.locationtech.jts.geom.GeometryCollection,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geom.util.GeometryTransformer:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 17
  - functionName: "[org.locationtech.jts.operation.overlay.snap.SnapOverlayOp].prepareResult(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp"
    linkageType: null
    functionLinenumber: 114
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.snap.SnapOverlayOp:115,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.precision.CommonBitsRemover].addCommonBits(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.precision.CommonBitsRemover"
    linkageType: null
    functionLinenumber: 104
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:105,1"
      Dst: "[org.locationtech.jts.precision.CommonBitsRemover$Translater].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:106,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.precision.CommonBitsRemover:107,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNGRobust"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 22
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:159"
        BranchSideFuncs:
        - "overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:167"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:153,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySnapTries(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNGRobust:160,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNGRobust].overlaySR(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.union.CascadedPolygonUnion$1].isFloatingPrecision()"
    functionSourceFile: "org.locationtech.jts.operation.union.CascadedPolygonUnion$1"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].<init>(javax.swing.JPanel,org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JPanel"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager)"
    - "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - "[javax.swing.Timer].setInitialDelay(int)"
    - "[javax.swing.Timer].start()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:54,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:43,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager$1].<init>(org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:43,1"
      Dst: "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:58,1"
      Dst: "[javax.swing.Timer].setInitialDelay(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:59,1"
      Dst: "[javax.swing.Timer].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].paint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:66"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:64,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:66,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].access$000(org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].paint()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.OperationMonitorManager].paint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].<init>()"
    functionSourceFile: "org.jdom2.filter.Filters"
    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: "org.jdom2.filter.Filters:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].content()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].attribute()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].attribute(java.lang.String)"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.filter.Filter"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.Filters:165,1"
      Dst: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.filter.AttributeFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.AttributeFilter:91,1"
      Dst: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.AttributeFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.AttributeFilter:109,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].attribute(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.filter.Filter"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.Filters:178,1"
      Dst: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.AttributeFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.AttributeFilter:109,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].attribute(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.filter.Filter"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AttributeFilter].<init>(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.Filters:190,1"
      Dst: "[org.jdom2.filter.AttributeFilter].<init>(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.AttributeFilter].<init>(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.AttributeFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.AttributeFilter:100,1"
      Dst: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.AttributeFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.AttributeFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.AttributeFilter:109,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].comment()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].cdata()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].doctype()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].entityref()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].element()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].document()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].element(java.lang.String)"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.filter.Filter"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.Filters:256,1"
      Dst: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.ElementFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ElementFilter:108,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].element(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.filter.Filter"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.Filters:269,1"
      Dst: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.ElementFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ElementFilter:108,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].element(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.filter.Filter"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.Filters:281,1"
      Dst: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ElementFilter].<init>(java.lang.String,org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.filter.ElementFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ElementFilter:108,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].processinginstruction()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].text()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].textOnly()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].fboolean()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].fstring()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].fdouble()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].fclass(java.lang.Class)"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.filter.Filter"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.ClassFilter].<init>(java.lang.Class)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.Filters:350,1"
      Dst: "[org.jdom2.filter.ClassFilter].<init>(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.ClassFilter].<init>(java.lang.Class)"
    functionSourceFile: "org.jdom2.filter.ClassFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.filter.AbstractFilter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.filter.ClassFilter:77,1"
      Dst: "[org.jdom2.filter.AbstractFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.filter.Filters].fpassthrough()"
    functionSourceFile: "org.jdom2.filter.Filters"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.filter.Filter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].toIntArray(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:51,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:53,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:53,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].getChainStartIndices(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 2
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    - "[org.locationtech.jts.util.IntArrayList].add(int)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.util.IntArrayList].toArray()"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:69"
        BranchSideFuncs:
        - "add(int)"
        - "findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:65,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].<init>(int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:68,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].add(int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:70,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:75,1"
      Dst: "[org.locationtech.jts.util.IntArrayList].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].OLDgetChainStartIndices(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].toIntArray(java.util.List)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:82,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:83,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:83,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:85,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:90,1"
      Dst: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].toIntArray(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:100,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].toIntArray(java.util.List)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.Integer].intValue()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:51,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:53,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:53,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.index.MonotoneChainIndexer].findChainEnd(org.locationtech.jts.geom.Coordinate[],int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.index.MonotoneChainIndexer:100,1"
      Dst: "[org.locationtech.jts.geom.Quadrant].quadrant(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter:141,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize()"
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter:152,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize()"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter:153,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter:154,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].initialize()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 0
    returnType: "void"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DistanceToPoint"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    functionUses: 3
    ICount: 27
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:36"
        BranchSideFuncs:
        - "computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:35"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:36"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:39"
        BranchSideFuncs:
        - "computeDistance(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:38"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:39"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:47"
        BranchSideFuncs:
        - "getNumGeometries()"
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:46"
        BranchSideFuncs:
        - "getCoordinate()"
        - "setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.distance.DistanceToPoint:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.distance.DistanceToPoint:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:34,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.LineString,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:37,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Polygon,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:41,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:42,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:43,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DistanceToPoint].computeDistance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.algorithm.distance.PointPairDistance)"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:47,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    - Src: "org.locationtech.jts.algorithm.distance.DistanceToPoint:47,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMinimum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.algorithm.distance.PointPairDistance)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.distance.PointPairDistance"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.PointPairDistance:85,1"
      Dst: "[org.locationtech.jts.algorithm.distance.PointPairDistance].setMaximum(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].getMaxPointDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.algorithm.distance.PointPairDistance"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$3].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$3:238,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$3].setHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].validPanel_setHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$3:240,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].validPanel_setHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].validPanel_setHighlightPerformed(org.locationtech.jtstest.testbuilder.event.ValidPanelEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.event.ValidPanelEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[javax.swing.JTextField].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel$1].<init>(org.locationtech.jtstest.testbuilder.RelatePanel)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].jbInit()"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 227
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:132,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:40,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:46,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:52,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:85,1"
      Dst: "[javax.swing.JTextField].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:107,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:107,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:107,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel$1].<init>(org.locationtech.jtstest.testbuilder.RelatePanel)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:134,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:135,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:139,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].clearResults()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:150,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:179,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:181,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].runTests()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getIM()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].<init>(org.locationtech.jts.geom.IntersectionMatrix)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].transpose()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setRelateLabel(javax.swing.JLabel,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isEquals(int,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setPredicate(javax.swing.JLabel,boolean)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCrosses(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isWithin()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isContains()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isOverlaps(int,int)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    functionUses: 0
    ICount: 112
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getIM()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:187,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].<init>(org.locationtech.jts.geom.IntersectionMatrix)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:189,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].transpose()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:190,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].get(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setRelateLabel(javax.swing.JLabel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:200,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:200,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:203,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:206,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isEquals(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setPredicate(javax.swing.JLabel,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:207,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isDisjoint()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:208,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isIntersects()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:209,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isTouches(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:210,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCrosses(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:211,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isWithin()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:212,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isContains()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:213,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isOverlaps(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:214,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCovers()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:215,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].isCoveredBy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setRelateLabel(javax.swing.JLabel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - "[java.lang.StringBuffer].setCharAt(int,char)"
    - "[java.lang.StringBuffer].toString()"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:231,1"
      Dst: "[org.locationtech.jts.geom.Dimension].toDimensionSymbol(int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:231,1"
      Dst: "[java.lang.StringBuffer].setCharAt(int,char)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:232,1"
      Dst: "[java.lang.StringBuffer].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:232,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setPredicate(javax.swing.JLabel,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.swing.JLabel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:239"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.RelatePanel:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.RelatePanel:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:240,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:241,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:242,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - "[javax.swing.border.TitledBorder].<init>(javax.swing.border.Border,java.lang.String)"
    - "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - "[javax.swing.BorderFactory].createCompoundBorder(javax.swing.border.Border,javax.swing.border.Border)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.JTextField].setFont(java.awt.Font)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicate(java.lang.String,javax.swing.JLabel,javax.swing.JLabel,javax.swing.JLabel,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].setDivider(javax.swing.JLabel)"
    functionUses: 0
    ICount: 551
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:246,1"
      Dst: "[javax.swing.BorderFactory].createLineBorder(java.awt.Color,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:246,1"
      Dst: "[javax.swing.border.TitledBorder].<init>(javax.swing.border.Border,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:253,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:252,1"
      Dst: "[javax.swing.BorderFactory].createCompoundBorder(javax.swing.border.Border,javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:255,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:256,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:256,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:260,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:260,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:261,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:266,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:276,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:282,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:283,1"
      Dst: "[javax.swing.JTextField].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:284,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:285,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:288,1"
      Dst: "[javax.swing.text.JTextComponent].setEditable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:289,1"
      Dst: "[javax.swing.JTextField].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:340,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:341,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:344,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:344,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:344,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:420,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicate(java.lang.String,javax.swing.JLabel,javax.swing.JLabel,javax.swing.JLabel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:422,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].setDivider(javax.swing.JLabel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicate(java.lang.String,javax.swing.JLabel,javax.swing.JLabel,javax.swing.JLabel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "javax.swing.JLabel"
    - "javax.swing.JLabel"
    - "javax.swing.JLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateName(java.lang.String,javax.swing.JLabel,int)"
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateValue(javax.swing.JLabel,int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:442,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateName(java.lang.String,javax.swing.JLabel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:443,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateValue(javax.swing.JLabel,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateName(java.lang.String,javax.swing.JLabel,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "javax.swing.JLabel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:447,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:448,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:449,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:450,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:450,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:452,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:452,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:452,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].addPredicateValue(javax.swing.JLabel,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.swing.JLabel"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:459,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:459,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:460,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:462,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:462,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:462,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].setDivider(javax.swing.JLabel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.JLabel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:469,1"
      Dst: "[javax.swing.BorderFactory].createMatteBorder(int,int,int,int,java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:469,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.RelatePanel].access$000(org.locationtech.jtstest.testbuilder.RelatePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.RelatePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.RelatePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.RelatePanel:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.RelatePanel].expectedIntersectionMatrixChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:54,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].<init>(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.JLabel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:38,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:41,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:60,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].uiInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BorderLayout].<init>()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].<init>()"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$1].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$2].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$3].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$4].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$5].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    - "[javax.swing.JComponent].setFont(java.awt.Font)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JPanel].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$6].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$7].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$8].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel$9].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.JLabel].<init>(java.lang.String)"
    functionUses: 0
    ICount: 125
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:64,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:64,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:67,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:67,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:68,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$1].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].createButton(javax.swing.ImageIcon,java.lang.String,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:75,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$2].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$3].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$4].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$5].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:96,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:96,1"
      Dst: "[javax.swing.JComponent].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:97,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:98,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:99,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:101,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:104,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:105,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:106,1"
      Dst: "[javax.swing.Box].createRigidArea(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$6].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$7].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:126,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$8].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:136,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:137,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:138,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel$9].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:138,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:145,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:150,1"
      Dst: "[javax.swing.JLabel].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].btnExpand_actionPerformed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoom(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoomNext(java.awt.event.ActionEvent,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.event.ActionEvent"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].moveToNextNode(int)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:166,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].moveToNextNode(int)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getGeometryEditPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:172,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].flash(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionCopy(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:183"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].isCtlKeyPressed(java.awt.event.ActionEvent)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:183,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingUtil].copyToClipboard(java.lang.Object,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].deleteGeom()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter].deleteComponent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].updateGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter].deleteComponent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].updateGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTree].getLastSelectedPathComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[javax.swing.JTree].getLastSelectedPathComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getGeometryFromNode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter].deleteComponent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation].isEdited()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter:33"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter:30,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter:32,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation].isEdited()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    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: "org.locationtech.jts.geom.util.GeometryEditor:93,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - "[org.locationtech.jts.geom.Geometry].getUserData()"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.util.GeometryEditor:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.util.GeometryEditor:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:132,1"
      Dst: "[org.locationtech.jts.geom.util.GeometryEditor].editInternal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.util.GeometryEditor$GeometryEditorOperation)"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getUserData()"
    - Src: "org.locationtech.jts.geom.util.GeometryEditor:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation].isEdited()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter$DeleteComponentOperation"
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].getModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].undoSave(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometryInternal(int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].updateGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:163,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:163,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].setGeometry(java.lang.String,org.locationtech.jts.geom.Geometry,int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:199,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:200,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:201,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:202,1"
      Dst: "[javax.swing.JComponent].setForeground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:204,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].updateGeometry(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortNone()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByArea()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryTreePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreeModel].<init>(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryTreePanel:167,1"
      Dst: "[javax.swing.JTree].setModel(javax.swing.tree.TreeModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByLen()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:236"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:240"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$000(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoom(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoom(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$100(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionCopy(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionCopy(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$200(org.locationtech.jtstest.testbuilder.InspectorPanel,java.awt.event.ActionEvent,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    - "java.awt.event.ActionEvent"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoomNext(java.awt.event.ActionEvent,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].actionZoomNext(java.awt.event.ActionEvent,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$300(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].deleteGeom()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].deleteGeom()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].deleteGeom()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter].deleteComponent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].updateGeometry(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].getSelectedGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryComponentDeleter].deleteComponent(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:190,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setGeometry(int,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].updateGeometry(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].access$400(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].btnExpand_actionPerformed()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].btnExpand_actionPerformed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].btnExpand_actionPerformed()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:157,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    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: "org.locationtech.jts.operation.valid.RepeatedPointTester:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Polygon)"
    - "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.GeometryCollection)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:42"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:43"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:42"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:46"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:45"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:41,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:45,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:45,1"
      Dst: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:46,1"
      Dst: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Polygon)"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:47,1"
      Dst: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.GeometryCollection)"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:48,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:48,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:48,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:54,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 353
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 33
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:354"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:356"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:63,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:63,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:63,1"
      Dst: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:64,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:65,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:71,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:72,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:73,1"
      Dst: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:59"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:54,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Polygon)"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:64"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:63"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:66"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:63,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:63,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:63,1"
      Dst: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:64,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:65,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.GeometryCollection)"
    functionSourceFile: "org.locationtech.jts.operation.valid.RepeatedPointTester"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.valid.RepeatedPointTester:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.valid.RepeatedPointTester:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:71,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:72,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.operation.valid.RepeatedPointTester:73,1"
      Dst: "[org.locationtech.jts.operation.valid.RepeatedPointTester].hasRepeatedPoint(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.jdom2.input.sax.BuilderErrorHandler].<init>()"
    functionSourceFile: "org.jdom2.input.sax.BuilderErrorHandler"
    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: "org.jdom2.input.sax.BuilderErrorHandler:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.BuilderErrorHandler].warning(org.xml.sax.SAXParseException)"
    functionSourceFile: "org.jdom2.input.sax.BuilderErrorHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.SAXParseException"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.BuilderErrorHandler].error(org.xml.sax.SAXParseException)"
    functionSourceFile: "org.jdom2.input.sax.BuilderErrorHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.SAXParseException"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.sax.BuilderErrorHandler].fatalError(org.xml.sax.SAXParseException)"
    functionSourceFile: "org.jdom2.input.sax.BuilderErrorHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.xml.sax.SAXParseException"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE].<init>(java.util.List)"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.WalkerPRESERVE:100"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerPRESERVE:104"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerPRESERVE:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerPRESERVE:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.output.support.WalkerPRESERVE:100,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.jdom2.output.support.WalkerPRESERVE:104,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE].isAllText()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE].hasNext()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].hasNext()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerPRESERVE:131,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE].next()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Content"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Iterator].next()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerPRESERVE:136,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE].text()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE].isCDATA()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerPRESERVE].isAllWhitespace()"
    functionSourceFile: "org.jdom2.output.support.WalkerPRESERVE"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].<init>()"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.jdom2.DefaultJDOMFactory].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:111,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:530,1"
      Dst: "[org.jdom2.DefaultJDOMFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].process(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Document"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - "[javax.xml.stream.XMLStreamReader].getLocation()"
    - "[javax.xml.stream.Location].getSystemId()"
    - "[org.jdom2.Document].setBaseURI(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getCharacterEncodingScheme()"
    - "[org.jdom2.Document].setProperty(java.lang.String,java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStandalone()"
    - "[java.lang.String].valueOf(boolean)"
    - "[javax.xml.stream.XMLStreamReader].getEncoding()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - "[org.jdom2.Document].setDocType(org.jdom2.DocType)"
    - "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[org.jdom2.Document].addContent(org.jdom2.Content)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:127"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:132"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:131"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:134"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:195"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:194"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:169"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:189"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:188"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:189"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:192"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:125,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:128,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:132,1"
      Dst: "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - Src: "org.jdom2.input.StAXStreamBuilder:139,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocation()"
    - Src: "org.jdom2.input.StAXStreamBuilder:139,1"
      Dst: "[javax.xml.stream.Location].getSystemId()"
    - Src: "org.jdom2.input.StAXStreamBuilder:139,1"
      Dst: "[org.jdom2.Document].setBaseURI(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:140,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getCharacterEncodingScheme()"
    - Src: "org.jdom2.input.StAXStreamBuilder:140,1"
      Dst: "[org.jdom2.Document].setProperty(java.lang.String,java.lang.Object)"
    - Src: "org.jdom2.input.StAXStreamBuilder:142,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStandalone()"
    - Src: "org.jdom2.input.StAXStreamBuilder:142,1"
      Dst: "[java.lang.String].valueOf(boolean)"
    - Src: "org.jdom2.input.StAXStreamBuilder:144,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEncoding()"
    - Src: "org.jdom2.input.StAXStreamBuilder:149,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:149,1"
      Dst: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.StAXStreamBuilder:149,1"
      Dst: "[org.jdom2.Document].setDocType(org.jdom2.DocType)"
    - Src: "org.jdom2.input.StAXStreamBuilder:154,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:154,1"
      Dst: "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - Src: "org.jdom2.input.StAXStreamBuilder:169,1"
      Dst: "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:170,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:170,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.StAXStreamBuilder:176,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:176,1"
      Dst: "[org.jdom2.Document].addContent(org.jdom2.Content)"
    - Src: "org.jdom2.input.StAXStreamBuilder:181,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:181,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:181,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:186,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:189,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:190,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:197,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 22
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:86,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Document].setBaseURI(java.lang.String)"
    functionSourceFile: "org.jdom2.Document"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Document].setProperty(java.lang.String,java.lang.Object)"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:770"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:773"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:772"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:771,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.jdom2.Document:773,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[java.util.regex.Matcher].group(int)"
    - "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:391"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:396"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:395"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:403"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:405"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:404"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:405"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:408"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:407"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:411"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:414"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:390,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.jdom2.input.stax.DTDParser:391,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:396,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "org.jdom2.input.stax.DTDParser:397,1"
      Dst: "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - Src: "org.jdom2.input.stax.DTDParser:404,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:406,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:408,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.Document].setDocType(org.jdom2.DocType)"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "org.jdom2.DocType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].indexOfDocType()"
    - "[org.jdom2.ContentList].remove(int)"
    - "[org.jdom2.DocType].getParent()"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.DocType,java.lang.String)"
    - "[org.jdom2.ContentList].add(int,org.jdom2.Content)"
    - "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:287"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:293"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Document:290"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:291"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:290"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Document:294"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:300"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:299"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Document:301"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:305"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:289,1"
      Dst: "[org.jdom2.ContentList].indexOfDocType()"
    - Src: "org.jdom2.Document:290,1"
      Dst: "[org.jdom2.ContentList].remove(int)"
    - Src: "org.jdom2.Document:294,1"
      Dst: "[org.jdom2.DocType].getParent()"
    - Src: "org.jdom2.Document:295,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.DocType,java.lang.String)"
    - Src: "org.jdom2.Document:302,1"
      Dst: "[org.jdom2.ContentList].add(int,org.jdom2.Content)"
    - Src: "org.jdom2.Document:305,1"
      Dst: "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.jdom2.ContentList].indexOfDocType()"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 479
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:480"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:481"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:null"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.ContentList:482"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:481"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:480"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.ContentList].remove(int)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 498
    functionDepth: 1
    returnType: "org.jdom2.Content"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - "[org.jdom2.ContentList].incModCount()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 20
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:499,1"
      Dst: "[org.jdom2.ContentList].checkIndex(int,boolean)"
    - Src: "org.jdom2.ContentList:502,1"
      Dst: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - Src: "org.jdom2.ContentList:503,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.jdom2.ContentList:505,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].getParent()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "org.jdom2.Document"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Content].getParent()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:315,1"
      Dst: "[org.jdom2.Content].getParent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.IllegalAddException].<init>(org.jdom2.DocType,java.lang.String)"
    functionSourceFile: "org.jdom2.IllegalAddException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.DocType"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.DocType].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[org.jdom2.DocType].toString()"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.IllegalAddException:304,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DocType].toString()"
    functionSourceFile: "org.jdom2.DocType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.output.XMLOutputter].<init>()"
    - "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.DocType)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[org.jdom2.output.XMLOutputter].<init>()"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[org.jdom2.output.XMLOutputter].outputString(org.jdom2.DocType)"
    - Src: "org.jdom2.DocType:290,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.ContentList].add(int,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Element].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Document].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    - "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    - "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    - "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ContentList].ensureCapacity(int)"
    - "[org.jdom2.ContentList].incModCount()"
    - "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 32
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.jdom2.ContentList:251"
      Branch Sides:
      - BranchSide: "org.jdom2.ContentList:254"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.ContentList:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.ContentList:244,1"
      Dst: "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:246,1"
      Dst: "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:248,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - Src: "org.jdom2.ContentList:250,1"
      Dst: "[org.jdom2.ContentList].ensureCapacity(int)"
    - Src: "org.jdom2.ContentList:254,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "org.jdom2.ContentList:259,1"
      Dst: "[org.jdom2.ContentList].incModCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    functionSourceFile: "org.jdom2.ContentList"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 4
    returnType: "org.jdom2.Content"
    argCount: 2
    argTypes:
    - "int"
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Element].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.Document].canContainContent(org.jdom2.Content,int,boolean)"
    - "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - "[org.jdom2.Text].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ProcessingInstruction].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Comment].setParent(org.jdom2.Parent)"
    - "[org.jdom2.EntityRef].setParent(org.jdom2.Parent)"
    - "[org.jdom2.CDATA].setParent(org.jdom2.Parent)"
    - "[org.jdom2.DocType].setParent(org.jdom2.Parent)"
    - "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - "[org.jdom2.ContentList].incDataModOnly()"
    - "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    functionUses: 2
    ICount: 15
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.ContentList:527,1"
      Dst: "[org.jdom2.ContentList].checkPreConditions(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:530,1"
      Dst: "[org.jdom2.Parent].canContainContent(org.jdom2.Content,int,boolean)"
    - Src: "org.jdom2.ContentList:539,1"
      Dst: "[org.jdom2.ContentList].removeParent(org.jdom2.Content)"
    - Src: "org.jdom2.ContentList:540,1"
      Dst: "[org.jdom2.Content].setParent(org.jdom2.Parent)"
    - Src: "org.jdom2.ContentList:544,1"
      Dst: "[org.jdom2.ContentList].incDataModOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - "[org.jdom2.Content].getParentElement()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:450"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:456"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:455"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:459"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:499"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:498"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:459"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:499"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:498"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:450,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:451,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:456,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:459,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:460,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:463,1"
      Dst: "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - Src: "org.jdom2.input.StAXStreamBuilder:468,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.input.StAXStreamBuilder:472,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:472,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:477,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:481,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:485,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:485,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[javax.xml.stream.XMLStreamReader].getPrefix()"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceURI()"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeCount()"
    - "[javax.xml.stream.XMLStreamReader].getAttributeLocalName(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeValue(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeType(int)"
    - "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getAttributePrefix(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeNamespace(int)"
    - "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceCount()"
    - "[javax.xml.stream.XMLStreamReader].getNamespacePrefix(int)"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceURI(int)"
    - "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:510"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:519"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:520"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPrefix()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceURI()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:510,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeCount()"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeLocalName(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeValue(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeType(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributePrefix(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeNamespace(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    - Src: "org.jdom2.input.StAXStreamBuilder:520,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceCount()"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespacePrefix(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceURI(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    functionSourceFile: "org.jdom2.AttributeType"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.jdom2.AttributeType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.AttributeType:184"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:189"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.AttributeType:188"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:197"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.AttributeType:191"
      Branch Sides:
      - BranchSide: "org.jdom2.AttributeType:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.AttributeType:189,1"
      Dst: "[org.jdom2.AttributeType].valueOf(java.lang.String)"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.jdom2.AttributeType:191,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: true
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    - "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Element:385"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:389"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:388"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:389"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:397"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:396"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:390"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:393"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:392"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Element:398"
      Branch Sides:
      - BranchSide: "org.jdom2.Element:402"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Element:401"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Element:386,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "org.jdom2.Element:389,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.Element:389,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.Element:389,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.Element:397,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceCollision(org.jdom2.Namespace,org.jdom2.Element)"
    - Src: "org.jdom2.Element:399,1"
      Dst: "[org.jdom2.IllegalAddException].<init>(org.jdom2.Element,org.jdom2.Namespace,java.lang.String)"
    - Src: "org.jdom2.Element:402,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.jdom2.Element].addContent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:917,1"
      Dst: "[java.util.AbstractList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "org.jdom2.Element"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList].indexOfFirstElement()"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Document:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Document:241"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Document:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Document:236,1"
      Dst: "[org.jdom2.ContentList].indexOfFirstElement()"
    - Src: "org.jdom2.Document:238,1"
      Dst: "[java.util.AbstractList].add(java.lang.Object)"
    - Src: "org.jdom2.Document:241,1"
      Dst: "[org.jdom2.ContentList].set(int,org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1284"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1289"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1288"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1285"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:1283,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:1285,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:1285,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.jdom2.Document].addContent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.Document"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Document:320,1"
      Dst: "[java.util.AbstractList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processFragments(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,org.jdom2.input.stax.StAXFilter)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    - "org.jdom2.input.stax.StAXFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[javax.xml.stream.XMLStreamReader].getName()"
    - "[javax.xml.namespace.QName].getLocalPart()"
    - "[javax.xml.namespace.QName].getPrefix()"
    - "[javax.xml.namespace.QName].getNamespaceURI()"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].includeElement(int,java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.input.StAXStreamBuilder].processPrunableElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,int,org.jdom2.input.stax.StAXFilter)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.jdom2.input.stax.StAXFilter].includeDocType()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - "[org.jdom2.input.stax.StAXFilter].includeCDATA(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].includeText(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].includeComment(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.input.stax.StAXFilter].includeEntityRef(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[org.jdom2.input.stax.StAXFilter].includeProcessingInstruction(int,java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 105
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:205"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:209"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:208"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:215"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:288"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:287"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:215"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:288"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:287"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:226"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:230"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:233"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:233"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:235"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:237"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:237"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:233"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:232"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:245"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:251"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:258"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:264"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:270"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:276"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:203,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:206,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:209,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:225,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[javax.xml.namespace.QName].getLocalPart()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[javax.xml.namespace.QName].getPrefix()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[javax.xml.namespace.QName].getNamespaceURI()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeElement(int,java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:228,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processPrunableElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,int,org.jdom2.input.stax.StAXFilter)"
    - Src: "org.jdom2.input.StAXStreamBuilder:228,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.jdom2.input.StAXStreamBuilder:245,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeDocType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:246,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:246,1"
      Dst: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.StAXStreamBuilder:251,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeCDATA(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:252,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:258,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeText(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:259,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:264,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeComment(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:265,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:270,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:270,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeEntityRef(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:271,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:276,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:276,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeProcessingInstruction(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:277,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:277,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.StAXStreamBuilder:287,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 19
    BBCount: 36
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:86,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processPrunableElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,int,org.jdom2.input.stax.StAXFilter)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    - "int"
    - "org.jdom2.input.stax.StAXFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[javax.xml.stream.XMLStreamReader].getName()"
    - "[javax.xml.namespace.QName].getLocalPart()"
    - "[javax.xml.namespace.QName].getPrefix()"
    - "[javax.xml.namespace.QName].getNamespaceURI()"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].pruneElement(int,java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - "[org.jdom2.Content].getParentElement()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.StAXFilter].pruneCDATA(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].pruneText(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].pruneComment(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.input.stax.StAXFilter].pruneEntityRef(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[org.jdom2.input.stax.StAXFilter].pruneProcessingInstruction(int,java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 92
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:298"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:304"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:303"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:308"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:375"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:374"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:308"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:375"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:374"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:312"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:319"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:331"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:331"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:331"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:325"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:327"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:326"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:327"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:323"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:322"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:338"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:345"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:351"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:357"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:363"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:298,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:299,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:304,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:308,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:309,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:311,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[javax.xml.namespace.QName].getLocalPart()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[javax.xml.namespace.QName].getPrefix()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[javax.xml.namespace.QName].getNamespaceURI()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneElement(int,java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:316,1"
      Dst: "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - Src: "org.jdom2.input.StAXStreamBuilder:334,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.input.StAXStreamBuilder:338,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:338,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneCDATA(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:339,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:345,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneText(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:346,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:351,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneComment(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:352,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:357,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:357,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneEntityRef(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:358,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:363,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:363,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneProcessingInstruction(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:364,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:364,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 20
    BBCount: 31
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[javax.xml.stream.XMLStreamReader].getPrefix()"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceURI()"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeCount()"
    - "[javax.xml.stream.XMLStreamReader].getAttributeLocalName(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeValue(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeType(int)"
    - "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getAttributePrefix(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeNamespace(int)"
    - "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceCount()"
    - "[javax.xml.stream.XMLStreamReader].getNamespacePrefix(int)"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceURI(int)"
    - "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:510"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:519"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:520"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPrefix()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceURI()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:510,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeCount()"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeLocalName(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeValue(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeType(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributePrefix(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeNamespace(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    - Src: "org.jdom2.input.StAXStreamBuilder:520,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceCount()"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespacePrefix(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceURI(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.Element].addContent(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.Element"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.Element"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Element:917,1"
      Dst: "[java.util.AbstractList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[java.util.regex.Matcher].group(int)"
    - "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:391"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:396"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:395"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:403"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:405"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:404"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:405"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:408"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:407"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:411"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:414"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:390,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.jdom2.input.stax.DTDParser:391,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:396,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "org.jdom2.input.stax.DTDParser:397,1"
      Dst: "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - Src: "org.jdom2.input.stax.DTDParser:404,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:406,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:408,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processPrunableElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,int,org.jdom2.input.stax.StAXFilter)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Element"
    argCount: 4
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    - "int"
    - "org.jdom2.input.stax.StAXFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[javax.xml.stream.XMLStreamReader].getName()"
    - "[javax.xml.namespace.QName].getLocalPart()"
    - "[javax.xml.namespace.QName].getPrefix()"
    - "[javax.xml.namespace.QName].getNamespaceURI()"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].pruneElement(int,java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - "[org.jdom2.Content].getParentElement()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.StAXFilter].pruneCDATA(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].pruneText(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].pruneComment(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.input.stax.StAXFilter].pruneEntityRef(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[org.jdom2.input.stax.StAXFilter].pruneProcessingInstruction(int,java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 92
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:298"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:304"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:303"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:308"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:375"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:374"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:308"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:375"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:374"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:312"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:319"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:331"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:331"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:323"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:331"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:325"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:327"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:326"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:327"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:323"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:322"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:338"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:345"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:351"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:357"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:363"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:338"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:298,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:299,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:304,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:308,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:309,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:311,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[javax.xml.namespace.QName].getLocalPart()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[javax.xml.namespace.QName].getPrefix()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[javax.xml.namespace.QName].getNamespaceURI()"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:312,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneElement(int,java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:316,1"
      Dst: "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - Src: "org.jdom2.input.StAXStreamBuilder:334,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.input.StAXStreamBuilder:338,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:338,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneCDATA(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:339,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:345,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneText(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:346,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:351,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneComment(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:352,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:357,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:357,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneEntityRef(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:358,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:363,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:363,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].pruneProcessingInstruction(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:364,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:364,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:370,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 20
    BBCount: 31
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.jdom2.Content"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:392,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:395,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:402,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:403,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:407,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:407,1"
      Dst: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.StAXStreamBuilder:412,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:418,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:423,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:428,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:428,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:433,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:433,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:433,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.StAXStreamBuilder:443,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:86,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - "[org.jdom2.Content].getParentElement()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:450"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:456"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:455"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:459"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:499"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:498"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:459"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:499"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:498"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:450,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:451,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:456,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:459,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:460,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:463,1"
      Dst: "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - Src: "org.jdom2.input.StAXStreamBuilder:468,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.input.StAXStreamBuilder:472,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:472,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:477,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:481,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:485,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:485,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.stax.DTDParser"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.DocType"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.jdom2.JDOMFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[java.util.regex.Matcher].group(int)"
    - "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.stax.DTDParser:391"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:396"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:395"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:403"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:405"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:404"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:405"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:408"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:407"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.stax.DTDParser:411"
      Branch Sides:
      - BranchSide: "org.jdom2.input.stax.DTDParser:414"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.stax.DTDParser:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.stax.DTDParser:390,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "org.jdom2.input.stax.DTDParser:391,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.stax.DTDParser:392,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:396,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "org.jdom2.input.stax.DTDParser:397,1"
      Dst: "[org.jdom2.input.stax.DTDParser].getGroup(java.util.regex.Matcher,int[])"
    - Src: "org.jdom2.input.stax.DTDParser:404,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:406,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:408,1"
      Dst: "[org.jdom2.JDOMFactory].docType(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.input.stax.DTDParser].formatInternal(java.lang.String)"
    - Src: "org.jdom2.input.stax.DTDParser:412,1"
      Dst: "[org.jdom2.DocType].setInternalSubset(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "org.jdom2.JDOMException"
    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: "org.jdom2.JDOMException:100,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - "[org.jdom2.Content].getParentElement()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:450"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:456"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:455"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:459"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:499"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:498"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:459"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:499"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:498"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:450,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:451,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:456,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:459,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:460,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:463,1"
      Dst: "[org.jdom2.Element].addContent(org.jdom2.Content)"
    - Src: "org.jdom2.input.StAXStreamBuilder:468,1"
      Dst: "[org.jdom2.Content].getParentElement()"
    - Src: "org.jdom2.input.StAXStreamBuilder:472,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:472,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:477,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:481,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:485,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:485,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:489,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:494,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 16
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.jdom2.Element"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[javax.xml.stream.XMLStreamReader].getPrefix()"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceURI()"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeCount()"
    - "[javax.xml.stream.XMLStreamReader].getAttributeLocalName(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeValue(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeType(int)"
    - "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getAttributePrefix(int)"
    - "[javax.xml.stream.XMLStreamReader].getAttributeNamespace(int)"
    - "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceCount()"
    - "[javax.xml.stream.XMLStreamReader].getNamespacePrefix(int)"
    - "[javax.xml.stream.XMLStreamReader].getNamespaceURI(int)"
    - "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:510"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:519"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:520"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPrefix()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceURI()"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:505,1"
      Dst: "[org.jdom2.JDOMFactory].element(java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:510,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeCount()"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeLocalName(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeValue(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeType(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.AttributeType].getAttributeType(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributePrefix(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getAttributeNamespace(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.JDOMFactory].attribute(java.lang.String,java.lang.String,org.jdom2.AttributeType,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:511,1"
      Dst: "[org.jdom2.JDOMFactory].setAttribute(org.jdom2.Element,org.jdom2.Attribute)"
    - Src: "org.jdom2.input.StAXStreamBuilder:520,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceCount()"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespacePrefix(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getNamespaceURI(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:521,1"
      Dst: "[org.jdom2.Element].addNamespaceDeclaration(org.jdom2.Namespace)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.jdom2.input.StAXStreamBuilder].getFactory()"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.jdom2.JDOMFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].setFactory(org.jdom2.JDOMFactory)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.JDOMFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].build(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "org.jdom2.Document"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.StAXStreamBuilder].process(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:561,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].process(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].process(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.jdom2.Document"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - "[javax.xml.stream.XMLStreamReader].getLocation()"
    - "[javax.xml.stream.Location].getSystemId()"
    - "[org.jdom2.Document].setBaseURI(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getCharacterEncodingScheme()"
    - "[org.jdom2.Document].setProperty(java.lang.String,java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStandalone()"
    - "[java.lang.String].valueOf(boolean)"
    - "[javax.xml.stream.XMLStreamReader].getEncoding()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - "[org.jdom2.Document].setDocType(org.jdom2.DocType)"
    - "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[org.jdom2.Document].addContent(org.jdom2.Content)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 80
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:127"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:132"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:131"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:134"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:195"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:194"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:169"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:189"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:188"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:189"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:192"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:125,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:128,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:132,1"
      Dst: "[org.jdom2.JDOMFactory].document(org.jdom2.Element)"
    - Src: "org.jdom2.input.StAXStreamBuilder:139,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocation()"
    - Src: "org.jdom2.input.StAXStreamBuilder:139,1"
      Dst: "[javax.xml.stream.Location].getSystemId()"
    - Src: "org.jdom2.input.StAXStreamBuilder:139,1"
      Dst: "[org.jdom2.Document].setBaseURI(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:140,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getCharacterEncodingScheme()"
    - Src: "org.jdom2.input.StAXStreamBuilder:140,1"
      Dst: "[org.jdom2.Document].setProperty(java.lang.String,java.lang.Object)"
    - Src: "org.jdom2.input.StAXStreamBuilder:142,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStandalone()"
    - Src: "org.jdom2.input.StAXStreamBuilder:142,1"
      Dst: "[java.lang.String].valueOf(boolean)"
    - Src: "org.jdom2.input.StAXStreamBuilder:144,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEncoding()"
    - Src: "org.jdom2.input.StAXStreamBuilder:149,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:149,1"
      Dst: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.StAXStreamBuilder:149,1"
      Dst: "[org.jdom2.Document].setDocType(org.jdom2.DocType)"
    - Src: "org.jdom2.input.StAXStreamBuilder:154,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:154,1"
      Dst: "[org.jdom2.Document].setRootElement(org.jdom2.Element)"
    - Src: "org.jdom2.input.StAXStreamBuilder:169,1"
      Dst: "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:170,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:170,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.StAXStreamBuilder:176,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:176,1"
      Dst: "[org.jdom2.Document].addContent(org.jdom2.Content)"
    - Src: "org.jdom2.input.StAXStreamBuilder:181,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:181,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:181,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:186,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:189,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:190,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:197,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 22
  - functionName: "[org.jdom2.input.StAXStreamBuilder].buildFragments(javax.xml.stream.XMLStreamReader,org.jdom2.input.stax.StAXFilter)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    - "org.jdom2.input.stax.StAXFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.StAXStreamBuilder].processFragments(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,org.jdom2.input.stax.StAXFilter)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:573,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processFragments(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,org.jdom2.input.stax.StAXFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processFragments(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,org.jdom2.input.stax.StAXFilter)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 3
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    - "org.jdom2.input.stax.StAXFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[javax.xml.stream.XMLStreamReader].getName()"
    - "[javax.xml.namespace.QName].getLocalPart()"
    - "[javax.xml.namespace.QName].getPrefix()"
    - "[javax.xml.namespace.QName].getNamespaceURI()"
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].includeElement(int,java.lang.String,org.jdom2.Namespace)"
    - "[org.jdom2.input.StAXStreamBuilder].processPrunableElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,int,org.jdom2.input.stax.StAXFilter)"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.jdom2.input.stax.StAXFilter].includeDocType()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - "[org.jdom2.input.stax.StAXFilter].includeCDATA(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].includeText(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.input.stax.StAXFilter].includeComment(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.input.stax.StAXFilter].includeEntityRef(int,java.lang.String)"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[org.jdom2.input.stax.StAXFilter].includeProcessingInstruction(int,java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 105
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.input.StAXStreamBuilder:205"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:209"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:208"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:215"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:288"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:287"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:215"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:288"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:287"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:226"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:230"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:233"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:233"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:235"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:237"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:237"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:233"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:232"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:245"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:251"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:258"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:264"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:270"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.input.StAXStreamBuilder:276"
      Branch Sides:
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:251"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.input.StAXStreamBuilder:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:203,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:206,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:209,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.jdom2.input.StAXStreamBuilder:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:225,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[javax.xml.namespace.QName].getLocalPart()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[javax.xml.namespace.QName].getPrefix()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[javax.xml.namespace.QName].getNamespaceURI()"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:226,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeElement(int,java.lang.String,org.jdom2.Namespace)"
    - Src: "org.jdom2.input.StAXStreamBuilder:228,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processPrunableElement(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader,int,org.jdom2.input.stax.StAXFilter)"
    - Src: "org.jdom2.input.StAXStreamBuilder:228,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.jdom2.input.StAXStreamBuilder:245,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeDocType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:246,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:246,1"
      Dst: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.StAXStreamBuilder:251,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeCDATA(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:252,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:258,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeText(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:259,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:264,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeComment(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:265,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:270,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:270,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeEntityRef(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:271,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:276,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:276,1"
      Dst: "[org.jdom2.input.stax.StAXFilter].includeProcessingInstruction(int,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:277,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:277,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:283,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.StAXStreamBuilder:287,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 19
    BBCount: 36
  - functionName: "[org.jdom2.input.StAXStreamBuilder].fragment(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.jdom2.Content"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.input.StAXStreamBuilder].processFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:587,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.input.StAXStreamBuilder].processFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.jdom2.input.StAXStreamBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.jdom2.Content"
    argCount: 2
    argTypes:
    - "org.jdom2.JDOMFactory"
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getEventType()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[javax.xml.stream.XMLStreamReader].getText()"
    - "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - "[javax.xml.stream.XMLStreamReader].getPIData()"
    - "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.input.StAXStreamBuilder:392,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getEventType()"
    - Src: "org.jdom2.input.StAXStreamBuilder:395,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:402,1"
      Dst: "[org.jdom2.input.StAXStreamBuilder].processElementFragment(org.jdom2.JDOMFactory,javax.xml.stream.XMLStreamReader)"
    - Src: "org.jdom2.input.StAXStreamBuilder:403,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.jdom2.input.StAXStreamBuilder:407,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getText()"
    - Src: "org.jdom2.input.StAXStreamBuilder:407,1"
      Dst: "[org.jdom2.input.stax.DTDParser].parse(java.lang.String,org.jdom2.JDOMFactory)"
    - Src: "org.jdom2.input.StAXStreamBuilder:412,1"
      Dst: "[org.jdom2.JDOMFactory].cdata(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:418,1"
      Dst: "[org.jdom2.JDOMFactory].text(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:423,1"
      Dst: "[org.jdom2.JDOMFactory].comment(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:428,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.jdom2.input.StAXStreamBuilder:428,1"
      Dst: "[org.jdom2.JDOMFactory].entityRef(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:433,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPITarget()"
    - Src: "org.jdom2.input.StAXStreamBuilder:433,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getPIData()"
    - Src: "org.jdom2.input.StAXStreamBuilder:433,1"
      Dst: "[org.jdom2.JDOMFactory].processingInstruction(java.lang.String,java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.jdom2.input.StAXStreamBuilder:439,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.input.StAXStreamBuilder:443,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$5].<init>(org.locationtech.jtstest.testbuilder.TestCasePanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCasePanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$5:252,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel$5].stateChanged(javax.swing.event.ChangeEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel$5"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCasePanel].jTabbedPane1_stateChanged(javax.swing.event.ChangeEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel$5:255,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCasePanel].jTabbedPane1_stateChanged(javax.swing.event.ChangeEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCasePanel].jTabbedPane1_stateChanged(javax.swing.event.ChangeEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCasePanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.swing.event.ChangeEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JTabbedPane].getSelectedComponent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:196"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:200"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCasePanel:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:201"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCasePanel:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:179,1"
      Dst: "[javax.swing.JTabbedPane].getSelectedComponent()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:194,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ValidPanel].getMarkPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].instance()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCasePanel:199,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame].showResultWKTTab()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].<init>()"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    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: "org.locationtech.jtstest.function.OverlayNGTestFunctions:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 514
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:515,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:602,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 259
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:260,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesNoded(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:52,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:54,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:57,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:58,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:59,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesNodedIntersection(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:63,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:65,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:68,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:70,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesNodedIntNoOpt(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:74,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:76,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:79,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:80,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:81,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:82,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputNodedEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].extractPoly(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:88,1"
      Dst: "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.ConversionFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:69,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].buildGeometry(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:70,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:71,1"
      Dst: "[org.locationtech.jts.geom.util.PolygonExtracter].getPolygons(org.locationtech.jts.geom.Geometry,java.util.List)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:72,1"
      Dst: "[org.locationtech.jtstest.function.FunctionsUtil].getFactoryOrDefault(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toPolygonArray(java.util.Collection)"
    - Src: "org.locationtech.jtstest.function.ConversionFunctions:73,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesIntersectionResult(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:92,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:94,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:96,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:97,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:98,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesIntersectionAll(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:102,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:104,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:106,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:107,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:108,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesUnionResult(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:112,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:114,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:116,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:117,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:118,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesUnionAll(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:122,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:124,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:126,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:127,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:128,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].intersectionSRNoOpt(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:132,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:133,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:134,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:135,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 350
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:351,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:354,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:355,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].intersectionNoOpt(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:139,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:140,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:141,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOptimized(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].intersectionNoValid(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createFloatingPrecisionNoder(boolean)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:145,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createFloatingPrecisionNoder(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:146,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:146,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createFloatingPrecisionNoder(boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:157,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:158,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:159,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:159,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:163,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ValidatingNoder:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].intersectionIsValid(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createFloatingPrecisionNoder(boolean)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.geom.Geometry].isValid()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:152"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:150,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createFloatingPrecisionNoder(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:151,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:151,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:152,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createFloatingPrecisionNoder(boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:157,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:158,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:159,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:159,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:163,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createFloatingPrecisionNoder(boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:157,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:158,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:159,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:159,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:163,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].unionIntSymDiff(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].extractPoly(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:169,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:171,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:174,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:174,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].extractPoly(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].<init>(double)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 203
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:204,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:206,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].setScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:212,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].extractPoly(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:88,1"
      Dst: "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].unionIntSymDiffOriginal(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].extractPoly(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].symDifference(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:182,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:185,1"
      Dst: "[org.locationtech.jts.geom.Geometry].intersection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:185,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].extractPoly(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:186,1"
      Dst: "[org.locationtech.jts.geom.Geometry].symDifference(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:187,1"
      Dst: "[org.locationtech.jts.geom.Geometry].union(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].sameOrEmpty(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:40"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:41"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:45"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:42,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:46,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].extractPoly(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:88"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:88,1"
      Dst: "[org.locationtech.jtstest.function.ConversionFunctions].toMultiPolygon(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].unionClassicNoderNoValid(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createClassicNoder(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:192,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createClassicNoder(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:193,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createClassicNoder(boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:198,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:199,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:200,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:200,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:204,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexNoder"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    - "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexNoder:51,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:42,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexNoder:43,1"
      Dst: "[org.locationtech.jts.index.hprtree.HPRtree].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.RobustLineIntersector"
    linkageType: null
    functionLinenumber: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.RobustLineIntersector:29,1"
      Dst: "[org.locationtech.jts.algorithm.LineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.IntersectionAdder"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.LineIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.IntersectionAdder:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ValidatingNoder:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].overlay(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:230,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:231,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setNoder(org.locationtech.jts.noding.Noder)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:232,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].createClassicNoder(boolean)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.noding.Noder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:206"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:198,1"
      Dst: "[org.locationtech.jts.noding.MCIndexNoder].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:199,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:200,1"
      Dst: "[org.locationtech.jts.noding.IntersectionAdder].<init>(org.locationtech.jts.algorithm.LineIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:200,1"
      Dst: "[org.locationtech.jts.noding.SinglePassNoder].setSegmentIntersector(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:204,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].clipRing(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:210,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:210,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:211,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:212,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:212,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:64,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:66,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:67,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:69,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.RingClipper].clip(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.RingClipper"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.RingClipper].clipToBoxEdge(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:79"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:84"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:80"
        BranchSideFuncs:
        - "clipToBoxEdge(org.locationtech.jts.geom.Coordinate[],int,boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:79"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.RingClipper:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.RingClipper:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.RingClipper:81,1"
      Dst: "[org.locationtech.jts.operation.overlayng.RingClipper].clipToBoxEdge(org.locationtech.jts.geom.Coordinate[],int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].limitLine(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jtstest.function.OverlayNGTestFunctions].toLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:216,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:216,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:217,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:217,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:219,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:219,1"
      Dst: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].toLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:51,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.LineLimiter].limit(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.LineLimiter"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 5
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].addPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].addOutside(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.LineLimiter].finishSection()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:75"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:74"
        BranchSideFuncs:
        - "finishSection()"
    - Branch String: "org.locationtech.jts.operation.overlayng.LineLimiter:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:71"
        BranchSideFuncs:
        - "addPoint(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.LineLimiter:70"
        BranchSideFuncs:
        - "addOutside(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:64,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:68,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].addPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:71,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].addOutside(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.LineLimiter:75,1"
      Dst: "[org.locationtech.jts.operation.overlayng.LineLimiter].finishSection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].toLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:223,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:226,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:229,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].toLines(java.util.List,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.function.OverlayNGTestFunctions:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.function.OverlayNGTestFunctions:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:223,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:225,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:226,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:229,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.function.OverlayNGTestFunctions].edgesOverlayResult(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.function.OverlayNGTestFunctions"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:233,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:234,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    - Src: "org.locationtech.jtstest.function.OverlayNGTestFunctions:235,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 376
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:377,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].setOutputResultEdges(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayNG].getResult()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayNG"
    linkageType: null
    functionLinenumber: 464
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    functionUses: 6
    ICount: 44
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:473"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
        - "isAllPoints()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:479"
        BranchSideFuncs:
        - "hasPoints()"
        - "isSingle()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    - Branch String: "org.locationtech.jts.operation.overlayng.OverlayNG:480"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.OverlayNG:485"
        BranchSideFuncs:
        - "computeEdgeOverlay()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:465,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].getGeometry(int)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:464,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayUtil].isEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:468,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].createEmptyResult()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:474,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].create(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:476,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isAllPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:478,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].isSingle()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:480,1"
      Dst: "[org.locationtech.jts.operation.overlayng.InputGeometry].hasPoints()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:482,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints].overlay(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:486,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayNG].computeEdgeOverlay()"
    - Src: "org.locationtech.jts.operation.overlayng.OverlayNG:491,1"
      Dst: "[org.locationtech.jts.operation.overlayng.ElevationModel].populateZ(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.Font].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:44,1"
      Dst: "[java.awt.Font].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].setBorderEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].setStatsEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].setMetricsEnabled(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].setBorder(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].setBorderColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].setFill(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].paint(java.util.List,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].computeBox(java.util.List,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntries(java.util.List,java.awt.Rectangle,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:85,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:87,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].computeBox(java.util.List,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntries(java.util.List,java.awt.Rectangle,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].computeBox(java.util.List,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.awt.Rectangle"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].entryWidth(java.util.List,java.awt.Graphics2D)"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].entryWidth(java.util.List,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:250,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:250,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:254,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].entryWidth(java.util.List,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Graphics2D].getFontRenderContext()"
    - "[java.awt.Font].getStringBounds(java.lang.String,java.awt.font.FontRenderContext)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:265,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:265,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:265,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:270,1"
      Dst: "[java.awt.Graphics2D].getFontRenderContext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:270,1"
      Dst: "[java.awt.Font].getStringBounds(java.lang.String,java.awt.font.FontRenderContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:93"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:136,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.Layer:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.Layer:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryContainer].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.String].toUpperCase()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:28"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:29"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:34"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:37"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:30,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:35,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:38,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:40,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasLength(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasArea(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].area(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:48"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasLength(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:46,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].hasArea(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil:47,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].area(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Rectangle"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:231,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:232,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:235,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:241,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:243,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntries(java.util.List,java.awt.Rectangle,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.awt.Rectangle"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntry(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:102,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:108,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:112,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntry(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntry(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatch(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:117,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:118,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:119,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatch(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatch(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchBox(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchLine(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchPoint(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:148,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchBox(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchLine(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:156,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchPoint(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchBox(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:162,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:171,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:172,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:179,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:185,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:188,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.Layer:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getGeomStyle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:109,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.BasicStyle:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].setAlpha(java.awt.Color,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchLine(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Line2D$Float].<init>(float,float,float,float)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:193,1"
      Dst: "[java.awt.geom.Line2D$Float].<init>(float,float,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:202,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:208,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:211,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:212,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchPoint(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:221,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:226,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:227,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.Layer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:180,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.LayerStyle:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:93"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:98,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntries(java.util.List,java.awt.Rectangle,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.awt.Rectangle"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntry(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:102,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:108,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:112,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntry(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawEntry(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics].setFont(java.awt.Font)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatch(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:117,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:118,1"
      Dst: "[java.awt.Graphics].setFont(java.awt.Font)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:119,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:119,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatch(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:138"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].structureSummary(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:133,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:136,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil].metricsSummary(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:143,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatch(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchBox(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchLine(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchPoint(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometry()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:148,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:150,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchBox(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:153,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchLine(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:156,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchPoint(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchBox(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:175"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:189"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:162,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:168,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isFilled()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getFillColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:171,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:172,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].isStroked()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:179,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:185,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:188,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchLine(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Line2D$Float].<init>(float,float,float,float)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:193,1"
      Dst: "[java.awt.geom.Line2D$Float].<init>(float,float,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getGeometryStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:198,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getStrokeWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:202,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:208,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.BasicStyle].getLineColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:211,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:212,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawSwatchPoint(org.locationtech.jtstest.testbuilder.model.Layer,int,int,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    - "int"
    - "int"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getLayerStyle()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexSize()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:221,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:225,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.LayerStyle].getVertexColor()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:226,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:227,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].drawBox(java.awt.Rectangle,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Rectangle"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:231,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:232,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:235,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:241,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:243,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].computeBox(java.util.List,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.awt.Rectangle"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].entryWidth(java.util.List,java.awt.Graphics2D)"
    - "[java.util.List].size()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].entryWidth(java.util.List,java.awt.Graphics2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:250,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:250,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].lineHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:254,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].entryWidth(java.util.List,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - "[java.awt.geom.RectangularShape].getWidth()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[java.awt.Graphics2D].getFontRenderContext()"
    - "[java.awt.Font].getStringBounds(java.lang.String,java.awt.font.FontRenderContext)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:263,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getName(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:265,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:265,1"
      Dst: "[java.awt.FontMetrics].getStringBounds(java.lang.String,java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:265,1"
      Dst: "[java.awt.geom.RectangularShape].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].hasDesc()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:269,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].getDescription(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:270,1"
      Dst: "[java.awt.Graphics2D].getFontRenderContext()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement:270,1"
      Dst: "[java.awt.Font].getStringBounds(java.lang.String,java.awt.font.FontRenderContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].<init>()"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[java.util.Collections].emptyList()"
    - "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory,java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:62,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:62,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:62,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory,java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:72,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:72,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory,java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:81,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:81,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].<init>(org.locationtech.jts.geom.GeometryFactory,java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[javax.xml.stream.XMLInputFactory].newInstance()"
    - "[java.util.Collections].emptySet()"
    - "[java.util.HashSet].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:91,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:43,1"
      Dst: "[javax.xml.stream.XMLInputFactory].newInstance()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:94,1"
      Dst: "[java.util.Collections].emptySet()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:95,1"
      Dst: "[java.util.HashSet].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].read(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringReader].<init>(java.lang.String)"
    - "[javax.xml.stream.XMLInputFactory].createXMLStreamReader(java.io.Reader)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    - "[java.io.StringReader].close()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.Exception)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:108,1"
      Dst: "[java.io.StringReader].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:109,1"
      Dst: "[javax.xml.stream.XMLInputFactory].createXMLStreamReader(java.io.Reader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:110,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:111,1"
      Dst: "[java.io.StringReader].close()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:112,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:112,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLPoint(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLLineString(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLPolygon(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLMultiGeometry(javax.xml.stream.XMLStreamReader)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:306,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:307,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:312,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:316,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:319,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:320,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:320,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:322,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPoint(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:324,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLLineString(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:326,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPolygon(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:329,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLMultiGeometry(javax.xml.stream.XMLStreamReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 22
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:354,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:354,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    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: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:27,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPoint(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:193,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:195,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:195,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:196,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes"
    argCount: 2
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[javax.xml.stream.XMLStreamReader].getElementText()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].<init>(org.locationtech.jts.geom.Coordinate[],java.util.Map)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:168,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:172,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:173,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:175,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:178,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getElementText()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:178,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:182,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:186,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:189,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].<init>(org.locationtech.jts.geom.Coordinate[],java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 15
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getElementText()"
    - "[java.lang.String].isEmpty()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].substring(int)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:117,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getElementText()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:119,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:120,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:124,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:126,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:129,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:134,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:141,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:143,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:145,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:152,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:152,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:154,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:160,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 15
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 250
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 446
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:448"
        BranchSideFuncs:
        - "makePrecise(double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:449,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].<init>(org.locationtech.jts.geom.Coordinate[],java.util.Map)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes:365,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 270
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.Point"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:270"
        BranchSideFuncs:
        - "createPoint(org.locationtech.jts.geom.CoordinateSequence)"
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:271,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLLineString(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:202,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:204,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:204,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:205,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:205,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPolygon(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[org.locationtech.jts.io.kml.KMLReader].moveToElement(javax.xml.stream.XMLStreamReader,java.lang.String,java.lang.String)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[javax.xml.stream.XMLStreamReader].getElementText()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:237"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:237"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:216,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:220,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].moveToElement(javax.xml.stream.XMLStreamReader,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:221,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:221,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:226,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:228,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:229,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:231,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:234,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getElementText()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:234,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:238,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:242,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:245,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:245,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:246,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 22
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].moveToElement(javax.xml.stream.XMLStreamReader,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:339"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:351"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:340,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:345,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:349,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 366
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:366"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:367,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLMultiGeometry(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.util.List].add(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.io.kml.KMLReader].prepareTypedArray(java.util.List,java.lang.Class)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 92
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:286"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:252,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:256,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:257,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:258,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:259,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:259,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:264,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:267,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:272,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:276,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:279,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:283,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:284,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:290,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].prepareTypedArray(java.util.List,java.lang.Class)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:290,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:292,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:294,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:296,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 20
    BBCount: 37
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].prepareTypedArray(java.util.List,java.lang.Class)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:358,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:358,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:358,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:400,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPolygon"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Polygon[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:346,1"
      Dst: "[org.locationtech.jts.geom.MultiPolygon].<init>(org.locationtech.jts.geom.Polygon[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.ParseException].<init>(java.lang.Exception)"
    functionSourceFile: "org.locationtech.jts.io.ParseException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].toString()"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.ParseException:37,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "org.locationtech.jts.io.ParseException:37,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].getElementText()"
    - "[java.lang.String].isEmpty()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].substring(int)"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 70
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:160"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:159"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:134"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:137"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:141"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:140"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:117,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getElementText()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:119,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:120,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:124,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:126,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:129,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:134,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:141,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:143,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:145,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:151,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:152,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:152,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:154,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:160,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 15
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes"
    argCount: 2
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[javax.xml.stream.XMLStreamReader].getElementText()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].<init>(org.locationtech.jts.geom.Coordinate[],java.util.Map)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:168"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:167"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:182"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:181"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:178"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:177"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:185"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:189"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:188"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:167,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:168,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:172,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:173,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:175,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:178,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getElementText()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:178,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:182,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:186,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:189,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].<init>(org.locationtech.jts.geom.Coordinate[],java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 15
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPoint(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:193,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:195,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:195,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:196,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:196,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLLineString(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:202,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinatesAndAttributes(javax.xml.stream.XMLStreamReader,java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:204,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$000(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:204,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:205,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes].access$100(org.locationtech.jts.io.kml.KMLReader$KMLCoordinatesAndAttributes)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:205,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPolygon(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[org.locationtech.jts.io.kml.KMLReader].moveToElement(javax.xml.stream.XMLStreamReader,java.lang.String,java.lang.String)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.HashMap].<init>()"
    - "[javax.xml.stream.XMLStreamReader].getElementText()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:216"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:215"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:237"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:222"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:221"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:237"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:233"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:244"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:245"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:215,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:216,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:220,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].moveToElement(javax.xml.stream.XMLStreamReader,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:221,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLCoordinates(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:221,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:226,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:228,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:229,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:231,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:234,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getElementText()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:234,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:238,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:242,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:245,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:245,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:246,1"
      Dst: "[org.locationtech.jts.geom.Geometry].setUserData(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 22
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKMLMultiGeometry(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.util.List].add(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.io.kml.KMLReader].prepareTypedArray(java.util.List,java.lang.Class)"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 92
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:278"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:257"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:275"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:259"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:268"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:267"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:283"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:282"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:286"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:298"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:252,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:256,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:257,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:258,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:259,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:259,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:264,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:267,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:272,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:276,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:279,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:283,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:284,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:290,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].prepareTypedArray(java.util.List,java.lang.Class)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:290,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.Point[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:292,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:294,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPolygon(org.locationtech.jts.geom.Polygon[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:296,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:296,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 20
    BBCount: 37
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].parseKML(javax.xml.stream.XMLStreamReader)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].hashCode()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLPoint(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLLineString(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLPolygon(javax.xml.stream.XMLStreamReader)"
    - "[org.locationtech.jts.io.kml.KMLReader].parseKMLMultiGeometry(javax.xml.stream.XMLStreamReader)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:314"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:307"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:315"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:306,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:307,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:312,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:316,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:319,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:320,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:320,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:322,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPoint(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:324,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLLineString(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:326,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLPolygon(javax.xml.stream.XMLStreamReader)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:329,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].parseKMLMultiGeometry(javax.xml.stream.XMLStreamReader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 12
    BBCount: 22
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].moveToElement(javax.xml.stream.XMLStreamReader,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.xml.stream.XMLStreamReader"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.xml.stream.XMLStreamReader].hasNext()"
    - "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - "[javax.xml.stream.XMLStreamReader].next()"
    - "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:340"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:339"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.kml.KMLReader:348"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:351"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.kml.KMLReader:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[javax.xml.stream.XMLStreamReader].hasNext()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isEndElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[javax.xml.stream.XMLStreamReader].getLocalName()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:339,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:340,1"
      Dst: "[javax.xml.stream.XMLStreamReader].isStartElement()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:345,1"
      Dst: "[javax.xml.stream.XMLStreamReader].next()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:349,1"
      Dst: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].raiseParseError(java.lang.String,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:354,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "org.locationtech.jts.io.kml.KMLReader:354,1"
      Dst: "[org.locationtech.jts.io.ParseException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.kml.KMLReader].prepareTypedArray(java.util.List,java.lang.Class)"
    functionSourceFile: "org.locationtech.jts.io.kml.KMLReader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.kml.KMLReader:358,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.io.kml.KMLReader:358,1"
      Dst: "[java.lang.reflect.Array].newInstance(java.lang.Class,int)"
    - Src: "org.locationtech.jts.io.kml.KMLReader:358,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8:157,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInputA()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$8:159,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInputA()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomToInputA()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:310,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:310,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].<init>(org.locationtech.jts.geom.LineSegment,int)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: 163
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:164,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:166,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].isUpward()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:170"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].minX()"
    - "[org.locationtech.jts.geom.LineSegment].maxX()"
    - "[org.locationtech.jts.geom.LineSegment].minY()"
    - "[org.locationtech.jts.geom.LineSegment].maxY()"
    - "[org.locationtech.jts.geom.LineSegment].compareTo(java.lang.Object)"
    - "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.LineSegment)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:200"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:199"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:208"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:215"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:223"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:196,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minX()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:196,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].maxX()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:198,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minY()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:198,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].maxY()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:200,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].compareTo(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:208,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.LineSegment)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.LineSegment].minX()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:85,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].maxX()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:93,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].minY()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:101,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].maxY()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:109,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:710"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:711"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:710"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:709,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:156,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:160,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.geom.LineSegment:163,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].OLDcompareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].minX()"
    - "[org.locationtech.jts.geom.LineSegment].maxX()"
    - "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.LineSegment)"
    - "[org.locationtech.jts.geom.LineSegment].compareTo(java.lang.Object)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:233"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:232"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:238"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:240"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:248"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:232,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].minX()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:232,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].maxX()"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:239,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.LineSegment)"
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:251,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].compareTo(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineSegment].minX()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:85,1"
      Dst: "[java.lang.Math].min(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].maxX()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:93,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].orientationIndex(org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:159"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:161"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineSegment:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:156,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.geom.LineSegment:160,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "org.locationtech.jts.geom.LineSegment:163,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.LineSegment].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:710"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:711"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:710"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:709,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].toString()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineSegment].toString()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment:256,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].toString()"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.LineSegment:732,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment].access$000(org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.buffer.SubgraphDepthLocater$DepthSegment"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$6:95"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.linearref.LocationIndexedLine].checkGeometryType()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:38,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexedLine].checkGeometryType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].checkGeometryType()"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LocationIndexedLine:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexedLine:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexedLine:44"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LocationIndexedLine:43"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexedLine:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LocationIndexedLine:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:44,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].extractPoint(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:59,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getCoordinate(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:264,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:265,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:268,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].pointAlongSegmentByFraction(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].extractPoint(org.locationtech.jts.linearref.LinearLocation,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].toLowest(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegment(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:80,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].toLowest(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:81,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegment(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:81,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:81,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].toLowest(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double,boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:446"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:447"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:446"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:443,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:444,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:447,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:488"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:489"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:488"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:487,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:101"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:95,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:100,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].normalize()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:135"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:139"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:140"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:144"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:143"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegment(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.LineSegment"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:283"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:287"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:280,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:281,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:283,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:284,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:285,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 102
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:103,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineSegment].pointAlongOffset(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.LineSegment"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].create()"
    - "[org.locationtech.jts.geom.CoordinateXYM].create()"
    - "[org.locationtech.jts.geom.CoordinateXY].create()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].create()"
    - "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - "[org.locationtech.jts.geom.Coordinate].setY(double)"
    - "[java.lang.Math].hypot(double,double)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 53
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineSegment:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:353"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:352"
        BranchSideFuncs:
        - "setY(double)"
        - "setX(double)"
        - "create()"
    - Branch String: "org.locationtech.jts.geom.LineSegment:344"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineSegment:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineSegment:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineSegment:340,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    - Src: "org.locationtech.jts.geom.LineSegment:345,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.LineSegment:356,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].create()"
    - Src: "org.locationtech.jts.geom.LineSegment:357,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setX(double)"
    - Src: "org.locationtech.jts.geom.LineSegment:358,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setY(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].extractLine(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:96,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.ExtractLineByLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.linearref.LinearLocation"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:41,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.ExtractLineByLocation:42,1"
      Dst: "[org.locationtech.jts.linearref.ExtractLineByLocation].extract(org.locationtech.jts.linearref.LinearLocation,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:114,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:31,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:32,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:141,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:37,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:38,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOfAfter(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].indicesOf(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.linearref.LinearLocation[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:156,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.linearref.LinearLocation[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfLine].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:37,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfLine].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfLine:38,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfLine].indicesOf(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].project(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:170,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexOfPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:31,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LocationIndexOfPoint:32,1"
      Dst: "[org.locationtech.jts.linearref.LocationIndexOfPoint].indexOf(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].getStartIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:179,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    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: "org.locationtech.jts.linearref.LinearLocation:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].getEndIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:188,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:39,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:40,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].isValidIndex(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].isValid(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:199,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].isValid(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].isValid(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:301"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:300"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:303"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:305"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:304"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:306"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:305"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:306"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:310"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:309"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:311"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:310"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:300,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:303,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:304,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LocationIndexedLine].clampIndex(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LocationIndexedLine"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].copy()"
    - "[org.locationtech.jts.linearref.LinearLocation].clamp(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:210,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].copy()"
    - Src: "org.locationtech.jts.linearref.LocationIndexedLine:211,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].clamp(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].copy()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 2
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:467,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].clamp(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:154"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:163"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:154,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:155,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:159,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:160,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].setToEnd(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:216,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LinearLocation:217,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LinearLocation:218,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].numSegments(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearLocation:488"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:489"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearLocation:488"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearLocation:487,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.SegmentNode].<init>(org.locationtech.jts.noding.NodedSegmentString,org.locationtech.jts.geom.Coordinate,int,int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "org.locationtech.jts.geom.Coordinate"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNode:37"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:32"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:31"
        BranchSideFuncs:
        - "copy()"
        - "getCoordinate(int)"
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNode:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNode:34,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    - Src: "org.locationtech.jts.noding.SegmentNode:37,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.SegmentNode:37,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.SegmentNode].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNode].isInterior()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "boolean"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNode].isEndPoint(int)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNode:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNode:54"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNode:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:55"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.SegmentNode].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentPointComparator].compare(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentNode:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:69"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:68"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNode:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:70"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNode:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNode:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.SegmentNode:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentNode:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNode:71,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentNode:78,1"
      Dst: "[org.locationtech.jts.noding.SegmentPointComparator].compare(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:291"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:294"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:297"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:296"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.noding.SegmentPointComparator].compare(int,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentPointComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.SegmentPointComparator].relativeSign(double,double)"
    - "[org.locationtech.jts.noding.SegmentPointComparator].compareValue(int,int)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.SegmentPointComparator:42"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.SegmentPointComparator:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:42,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:44,1"
      Dst: "[org.locationtech.jts.noding.SegmentPointComparator].relativeSign(double,double)"
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:48,1"
      Dst: "[org.locationtech.jts.noding.SegmentPointComparator].compareValue(int,int)"
    - Src: "org.locationtech.jts.noding.SegmentPointComparator:57,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 12
  - functionName: "[org.locationtech.jts.noding.SegmentNode].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].print(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].print(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNode:84,1"
      Dst: "[java.io.PrintStream].print(java.lang.Object)"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.noding.SegmentNode:85,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.SegmentNode].toString()"
    functionSourceFile: "org.locationtech.jts.noding.SegmentNode"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.Coordinate].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentNode:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.noding.SegmentNode:89,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.noding.SegmentNode:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.noding.SegmentNode:89,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].toString()"
    - Src: "org.locationtech.jts.noding.SegmentNode:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].toString()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    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)"
    - "[java.lang.StringBuilder].append(double)"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jts.geom.Coordinate:394,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].isInBoundary(int)"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule:121"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule].toString()"
    functionSourceFile: "org.locationtech.jts.algorithm.BoundaryNodeRule$Mod2BoundaryNodeRule"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$4].<init>(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$4:125,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel$4].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$300(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$4:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel$4:127,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$300(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$200(org.locationtech.jtstest.testbuilder.LayerListPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].access$300(org.locationtech.jtstest.testbuilder.LayerListPanel,org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerListPanel"
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:46,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].layerUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].findLayerItem(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:253,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:254,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].findLayerItem(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:254,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:255,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:255,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilder:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].layerUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].isTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].addBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].moveUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:578"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:587"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:586"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:579"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:584"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:583"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:587"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:590"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:589"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:578,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].contains(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:579,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].isTop(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:580,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].remove(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:581,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].addBottom(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel:584,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].moveUp(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].populateList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].removeAll()"
    - "[java.util.List].clear()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:183,1"
      Dst: "[java.awt.Container].removeAll()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:184,1"
      Dst: "[java.util.List].clear()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersTop()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:186,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].addLayers(org.locationtech.jtstest.testbuilder.model.LayerList)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:187,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:188,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayersBase()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:189,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].findLayerItem(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.Layer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:173"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:172"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:172"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:170,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:170,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:170,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:171,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.Layer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.LayerListPanel].setLayerFocus(org.locationtech.jtstest.testbuilder.LayerItemPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.LayerListPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.LayerItemPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].setFocusLayer(boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].showTabLayerStyle(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setLayer(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    - "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:208"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:210"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.LayerListPanel:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.LayerListPanel:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:208,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:208,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:208,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].setFocusLayer(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:212,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerItemPanel].getLayer()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:213,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].isLayerFixed(org.locationtech.jtstest.testbuilder.model.Layer)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].showTabLayerStyle(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:215,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerStylePanel].setLayer(org.locationtech.jtstest.testbuilder.model.Layer,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.LayerListPanel:217,1"
      Dst: "[org.locationtech.jtstest.testbuilder.LayerListPanel].updateButtons(org.locationtech.jtstest.testbuilder.model.Layer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].geometryViewChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:88"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:84,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:91,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    - Src: "org.locationtech.jts.io.WKTWriter:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:108,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:118,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:136,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 139
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:140,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].format(double,double)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:144,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.io.OrdinateFormat"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:160,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - Src: "org.locationtech.jts.io.WKTWriter:160,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].stringOfChar(char,int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:172"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:171,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:173,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.io.WKTWriter:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:245,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].<init>(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].setTab(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:272"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:267,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:269,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].setTab(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:273,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:275,1"
      Dst: "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum)"
    - Src: "org.locationtech.jts.io.WKTWriter:277,1"
      Dst: "[java.util.AbstractCollection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.io.WKTWriter].setFormatted(boolean)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].setMaxCoordinatesPerLine(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].setTab(int)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].stringOfChar(char,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:315"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:314,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:315,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].stringOfChar(char,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].setOutputOrdinates(java.util.EnumSet)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.EnumSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:336"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:337"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:339"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:338"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:342"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:347"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:345"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:344"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:345"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:348"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:333,1"
      Dst: "[java.util.AbstractCollection].remove(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:337,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:338,1"
      Dst: "[java.util.AbstractCollection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jts.io.WKTWriter].getOutputOrdinates()"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.util.EnumSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:370,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    - Src: "org.locationtech.jts.io.WKTWriter:370,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.PrecisionModel].getMaximumSignificantDigits()"
    functionSourceFile: "org.locationtech.jts.geom.PrecisionModel"
    linkageType: null
    functionLinenumber: 249
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].ceil(double)"
    functionUses: 2
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:255"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:254"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.PrecisionModel:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:258"
        BranchSideFuncs:
        - "getScale()"
      - BranchSide: "org.locationtech.jts.geom.PrecisionModel:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.geom.PrecisionModel:256,1"
      Dst: "[java.lang.Math].ceil(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].create(int)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.io.OrdinateFormat"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:75,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:382,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:385,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:388,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:390,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].write(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:402,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:443,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.WKTWriter:445,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.StringWriter].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - "[java.lang.Object].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:415,1"
      Dst: "[java.io.StringWriter].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:417,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:420,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    - Src: "org.locationtech.jts.io.WKTWriter:422,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:433,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:443,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.WKTWriter:445,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeFormatted(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:443,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.io.WKTWriter:445,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].getFormatter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.io.OrdinateFormat"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - "[org.locationtech.jts.io.WKTWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:453"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:454,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getPrecisionModel()"
    - Src: "org.locationtech.jts.io.WKTWriter:455,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].createFormatter(org.locationtech.jts.geom.PrecisionModel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet,org.locationtech.jts.io.WKTWriter$1)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].getOutputOrdinates()"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:474,1"
      Dst: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].<init>(org.locationtech.jts.io.WKTWriter,java.util.EnumSet,org.locationtech.jts.io.WKTWriter$1)"
    - Src: "org.locationtech.jts.io.WKTWriter:475,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.io.WKTWriter:478,1"
      Dst: "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].getOutputOrdinates()"
    - Src: "org.locationtech.jts.io.WKTWriter:478,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendPointTaggedText(org.locationtech.jts.geom.Point,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendLinearRingTaggedText(org.locationtech.jts.geom.LinearRing,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendLineStringTaggedText(org.locationtech.jts.geom.LineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendPolygonTaggedText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPointTaggedText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringTaggedText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonTaggedText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionTaggedText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[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()"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:500"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:504"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:503"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:504"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:508"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:507"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:508"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:512"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:511"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:512"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:516"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:515"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:516"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:520"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:519"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:524"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:523"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:524"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:528"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:527"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:528"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:533"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:532"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:498,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:501,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPointTaggedText(org.locationtech.jts.geom.Point,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:505,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendLinearRingTaggedText(org.locationtech.jts.geom.LinearRing,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:509,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendLineStringTaggedText(org.locationtech.jts.geom.LineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:513,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPolygonTaggedText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:517,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPointTaggedText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:521,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringTaggedText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:525,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonTaggedText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:529,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionTaggedText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:533,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:533,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:534,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jts.io.WKTWriter:534,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:534,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTWriter:533,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 18
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendPointTaggedText(org.locationtech.jts.geom.Point,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Point"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:553,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:555,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:556,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:556,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendLineStringTaggedText(org.locationtech.jts.geom.LineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:576,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:578,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:579,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:579,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendLinearRingTaggedText(org.locationtech.jts.geom.LinearRing,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:599,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:601,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:602,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:602,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendPolygonTaggedText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:622,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:624,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:625,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPointTaggedText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPointText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:645,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:647,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:648,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPointText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringTaggedText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:667,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:669,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:670,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonTaggedText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:690,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:692,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:693,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionTaggedText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:713,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:715,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:716,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.EnumSet"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.io.WKTWriter].writeNumber(double,org.locationtech.jts.io.OrdinateFormat)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getZ(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getM(int)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:738"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:743"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:742"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:743"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:747"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:746"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].writeNumber(double,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:736,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:736,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.io.WKTWriter:735,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:738,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:740,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getZ(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:745,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getM(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTWriter].writeNumber(double,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "double"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:758,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendOrdinateText(java.util.EnumSet,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.EnumSet"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[java.io.Writer].append(java.lang.CharSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:782"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:784"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:783"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:784"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:786"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:785"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:782,1"
      Dst: "[java.util.AbstractCollection].contains(java.lang.Object)"
    - Src: "org.locationtech.jts.io.WKTWriter:783,1"
      Dst: "[java.io.Writer].append(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "boolean"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - "[org.locationtech.jts.io.WKTWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:804"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:808"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:807"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:808"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:809"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:808"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:810"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:820"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:819"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:811"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:813"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:813"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:804,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.io.WKTWriter:805,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:808,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:818,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendCoordinate(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 13
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 7
    argTypes:
    - "org.locationtech.jts.geom.Polygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "boolean"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:841"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:845"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:844"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:845"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:846"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:845"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:849"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:853"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:841,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.io.WKTWriter:842,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:845,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:847,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.io.WKTWriter:847,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:847,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    - Src: "org.locationtech.jts.io.WKTWriter:849,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.io.WKTWriter:851,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPointText(org.locationtech.jts.geom.MultiPoint,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPoint"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].indentCoords(boolean,int,int,java.io.Writer)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:873"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:877"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:876"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:878"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:886"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:885"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:879"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:873,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:874,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:881,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indentCoords(boolean,int,int,java.io.Writer)"
    - Src: "org.locationtech.jts.io.WKTWriter:883,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:883,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:883,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiLineStringText(org.locationtech.jts.geom.MultiLineString,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiLineString"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:906"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:910"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:909"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:913"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:922"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:921"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:914"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:906,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:907,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:919,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:919,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.io.WKTWriter:919,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendSequenceText(org.locationtech.jts.geom.CoordinateSequence,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendMultiPolygonText(org.locationtech.jts.geom.MultiPolygon,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.MultiPolygon"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:941"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:945"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:944"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:948"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:957"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:956"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:949"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:941,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:942,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:954,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:954,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendPolygonText(org.locationtech.jts.geom.Polygon,java.util.EnumSet,boolean,int,boolean,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].appendGeometryCollectionText(org.locationtech.jts.geom.GeometryCollection,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "org.locationtech.jts.geom.GeometryCollection"
    - "java.util.EnumSet"
    - "boolean"
    - "int"
    - "java.io.Writer"
    - "org.locationtech.jts.io.OrdinateFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[java.io.Writer].write(java.lang.String)"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:976"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:980"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:979"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:982"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:990"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:989"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:983"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:976,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.io.WKTWriter:977,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:987,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.io.WKTWriter:987,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].appendGeometryTaggedText(org.locationtech.jts.geom.Geometry,java.util.EnumSet,boolean,int,java.io.Writer,org.locationtech.jts.io.OrdinateFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.io.WKTWriter].indentCoords(boolean,int,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:997"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:998"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:997"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:999"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:1000,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.io.WKTWriter].indent(boolean,int,java.io.Writer)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "java.io.Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.Writer].write(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:1006"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1007"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1006"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:1006"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1008"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1007"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:1011"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:1008,1"
      Dst: "[java.io.Writer].write(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.AppConstants].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.AppConstants"
    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: "org.locationtech.jtstest.testbuilder.AppConstants:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.net.URL)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.net.URL].openConnection()"
    - "[java.net.URLConnection].getInputStream()"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:83,1"
      Dst: "[java.net.URL].openConnection()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:84,1"
      Dst: "[java.net.URLConnection].getInputStream()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:84,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].<init>(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    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()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].read(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - "[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)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:112,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:113,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:113,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:114,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:115,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:115,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:119,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:120,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:121,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:129,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:132,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:133,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:136,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:138,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:142,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:143,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:151,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    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()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:100,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:261,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException:22,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readInt()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:77,1"
      Dst: "[java.io.DataInputStream].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 88
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getDefaultCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:89,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int,org.locationtech.jts.geom.CoordinateSequenceFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 321
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:322,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readStream(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - "[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)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:169"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:171"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:171"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:173"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:176"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:167,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getInputStream()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:168,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:169,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getVersion()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:170,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:174,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].getShapeType()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:175,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:176,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeTypeNotSupportedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].next()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:199,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:200,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:203,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:204,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:205,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:211,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].close()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeTypeDescription(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeType(org.locationtech.jts.geom.Geometry,int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeType(org.locationtech.jts.geom.Geometry,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:252,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeType(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:312"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 27
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException"
    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: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException:31,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:261,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeHandler(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapeHandler"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PointHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:261,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:262,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.PolygonHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiLineHandler].<init>(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:267,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:268,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].getShapeType(org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:278"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:284"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:285"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:293"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:304"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:312"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:280,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 27
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile].readIndex(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    - "[java.io.PrintStream].println(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:327,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:328,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:335,1"
      Dst: "[java.io.PrintStream].println(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:330,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.Shapefile:334,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].<init>(java.io.InputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    - "[java.io.DataInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:28,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:29,1"
      Dst: "[java.io.BufferedInputStream].<init>(java.io.InputStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:29,1"
      Dst: "[java.io.DataInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader].<init>(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:55"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:58"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:50,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntBE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:53,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:67,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileHeader:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].close()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].close()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:34,1"
      Dst: "[java.io.FilterInputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXML_actionPerformed(java.awt.event.ActionEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3:110,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXML_actionPerformed(java.awt.event.ActionEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXML_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:220,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.io.WKTWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:48,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:49,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.XMLTestWriter:136,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:32,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].recursionLevelForSize(int)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:38,1"
      Dst: "[java.lang.Math].log(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getGeometry()"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].recursionLevelForSize(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getDiameter()"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getHoles(int,double,double,double)"
    - "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareExtent()"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:44,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].recursionLevelForSize(int)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:45,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareBaseLine()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:46,1"
      Dst: "[org.locationtech.jts.geom.LineSegment].getCoordinate(int)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:47,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getDiameter()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:47,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getHoles(int,double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:48,1"
      Dst: "[org.locationtech.jts.shape.GeometricShapeBuilder].getSquareExtent()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:48,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometry(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:48,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:49,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].getHoles(int,double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LinearRing[]"
    argCount: 4
    argTypes:
    - "int"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:55,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:57,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:59,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toLinearRingArray(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "double"
    - "double"
    - "double"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].createSquareHole(double,double,double)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:67,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].addHoles(int,double,double,double,java.util.List)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:79,1"
      Dst: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].createSquareHole(double,double,double)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:79,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder].createSquareHole(double,double,double)"
    functionSourceFile: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 3
    argTypes:
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:84,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jts.shape.fractal.SierpinskiCarpetBuilder:91,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].filterCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.util.UniqueCoordinateArrayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].<init>()"
    - "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].getCoordinates()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:40,1"
      Dst: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].<init>()"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:42,1"
      Dst: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:44,1"
      Dst: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].<init>()"
    functionSourceFile: "org.locationtech.jts.util.UniqueCoordinateArrayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:47,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:49,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.UniqueCoordinateArrayFilter"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:70"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:67,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:68,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.util.UniqueCoordinateArrayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:59,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:60,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].<init>()"
    functionSourceFile: "org.locationtech.jts.util.UniqueCoordinateArrayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:47,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:49,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.util.UniqueCoordinateArrayFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:59,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:60,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.util.UniqueCoordinateArrayFilter"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:67"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:70"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:67,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "org.locationtech.jts.util.UniqueCoordinateArrayFilter:68,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:42,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].<init>(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:54"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:55"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:42,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:43,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:53,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].read(org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream,org.locationtech.jts.geom.GeometryFactory,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    - "org.locationtech.jts.geom.GeometryFactory"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readShortBE()"
    functionUses: 0
    ICount: 85
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:66"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:68"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:67"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:72"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:91"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:110"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:67,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:70,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:70,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:70,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:90,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:101,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readShortBE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 9
    BBCount: 22
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readIntLE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[],int,int)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:82,1"
      Dst: "[java.io.DataInputStream].readFully(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiPointFromCoords(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 424
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:425"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:425"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:424"
        BranchSideFuncs:
        - "createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:426,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:425,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiPoint(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.InvalidShapefileException:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.shapefile.ShapefileException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readDoubleLE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[],int,int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:115,1"
      Dst: "[java.io.DataInputStream].readFully(byte[],int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:125,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 132
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:133,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].setZ(double)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream].readShortBE()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readShort()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.EndianDataInputStream:65,1"
      Dst: "[java.io.DataInputStream].readShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].zMinMax(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jts.geom.Coordinate].getZ()"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:176"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:146"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:160"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:168"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:162"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:163"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:164"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:147"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:148,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:157,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getZ()"
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:158,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].getZ()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].getShapeType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler].getLength(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:202"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:205"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.shapefile.MultiPointHandler:201,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$7].<init>(org.locationtech.jtstest.testbuilder.InspectorPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.InspectorPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$7:121,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel$7].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel$7"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByArea()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel$7:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.InspectorPanel].sortByArea()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.InspectorPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.InspectorPanel:224"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.InspectorPanel:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.InspectorPanel:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryTreePanel].populate(org.locationtech.jts.geom.Geometry,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Namespace$NamespaceSerializationProxy].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace$NamespaceSerializationProxy"
    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: "org.jdom2.Namespace$NamespaceSerializationProxy:362,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace$NamespaceSerializationProxy].readResolve()"
    functionSourceFile: "org.jdom2.Namespace$NamespaceSerializationProxy"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.Namespace$NamespaceSerializationProxy:368,1"
      Dst: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.Namespace].getNamespace(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.Namespace"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.jdom2.Namespace"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Namespace:146"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:158"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:157"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:148"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:147"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:147"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:152"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:151"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:159"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:163"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:167"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:166"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:171"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:181"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:181"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:180"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:182"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:190"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:200"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:201"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:208"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:207"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:208"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:215"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:215"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:214"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:221"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:229"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:230"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:236"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:237"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:242"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Namespace:241"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Namespace:244"
      Branch Sides:
      - BranchSide: "org.jdom2.Namespace:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Namespace:147,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "org.jdom2.Namespace:152,1"
      Dst: "[org.jdom2.IllegalNameException].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.jdom2.Namespace:158,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.jdom2.Namespace:163,1"
      Dst: "[org.jdom2.Verifier].checkNamespaceURI(java.lang.String)"
    - Src: "org.jdom2.Namespace:167,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "org.jdom2.Namespace:168,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "org.jdom2.Namespace:237,1"
      Dst: "[org.jdom2.Verifier].checkNamespacePrefix(java.lang.String)"
    - Src: "org.jdom2.Namespace:242,1"
      Dst: "[org.jdom2.Namespace].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 33
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JPanel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.BorderLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    - "[java.lang.Throwable].printStackTrace()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:100,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:76,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:84,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:88,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:94,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:96,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryPopupMenu].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:101,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:102,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GridElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport,org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:103,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.LegendElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:104,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.TitleElement].<init>(org.locationtech.jtstest.testbuilder.ui.Viewport)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:109,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:111,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].initUI()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.Component].addComponentListener(java.awt.event.ComponentListener)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[javax.swing.BorderFactory].createEmptyBorder()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:116,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$1].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:116,1"
      Dst: "[java.awt.Component].addComponentListener(java.awt.event.ComponentListener)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:122,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:122,1"
      Dst: "[javax.swing.JComponent].setBackground(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:123,1"
      Dst: "[javax.swing.BorderFactory].createLoweredBevelBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:123,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:124,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:126,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:127,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewStyle()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setViewStyle(org.locationtech.jtstest.testbuilder.ui.render.ViewStyle)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getBackgroundColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:173,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:181,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - "[java.awt.Component].repaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:185,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:187,1"
      Dst: "[javax.swing.SwingUtilities].windowForComponent(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:190,1"
      Dst: "[java.awt.Component].repaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGrid(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:200,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].setGridEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:201,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingInput(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:206"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:207,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:209,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:213"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:214,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:215,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:219"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:221,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:227,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].forceRepaint()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setHighlightPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].isAddingPoints()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].updateGeom()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:241,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:242,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].setDirty(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:161,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].geomChanged()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEvent].<init>(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:363,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].fireGeometryChanged(org.locationtech.jtstest.testbuilder.model.GeometryEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToolTipText(java.awt.event.MouseEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.awt.event.MouseEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.MouseEvent].getPoint()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:247,1"
      Dst: "[java.awt.event.MouseEvent].getPoint()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:247,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModelCoordinate(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:206,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:207,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:38,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:39,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:52,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.LayerList"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jts.geom.Coordinate,double)"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:83"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:88"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:77,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:80,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.LayerList].getLayer(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocation(org.locationtech.jtstest.testbuilder.model.Layer,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:84,1"
      Dst: "[java.lang.StringBuffer].length()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:85,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.Layer].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter:94,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getToleranceInModel()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getInfo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:263,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:264,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:265,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].setHtml(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.GeometryLocationsWriter].writeLocationString(org.locationtech.jtstest.testbuilder.model.LayerList,org.locationtech.jts.geom.Coordinate,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].paintComponent(java.awt.Graphics)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 19
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].paintComponent(java.awt.Graphics)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].render()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:270,1"
      Dst: "[javax.swing.JComponent].paintComponent(java.awt.Graphics)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:271,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].render()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:272,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].render()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 18
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.Timer].stop()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].cancel()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].initImage()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getRenderer()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].<init>(org.locationtech.jtstest.testbuilder.ui.render.Renderer,java.awt.Image)"
    - "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    - "[javax.swing.Timer].start()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:68"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:78,1"
      Dst: "[javax.swing.Timer].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].cancel()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].initImage()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getRenderer()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:83,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RendererSwingWorker].<init>(org.locationtech.jtstest.testbuilder.ui.render.Renderer,java.awt.Image)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.SwingWorker].start()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:85,1"
      Dst: "[javax.swing.Timer].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].copyImage(java.awt.Graphics)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics].drawImage(java.awt.Image,int,int,java.awt.image.ImageObserver)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager:118,1"
      Dst: "[java.awt.Graphics].drawImage(java.awt.Image,int,int,java.awt.image.ImageObserver)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawBorder(java.awt.Graphics2D,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[java.awt.Graphics].drawRect(int,int,int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:276,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:282,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:283,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:286,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:287,1"
      Dst: "[java.awt.Graphics].drawRect(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawHighlightedVertices(java.awt.Graphics2D,java.util.List,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics2D"
    - "java.util.List"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Rectangle2D$Double].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Rectangle2D].setFrame(double,double,double,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:297,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:298,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:299,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:300,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:302,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:303,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:301,1"
      Dst: "[java.awt.geom.Rectangle2D].setFrame(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:306,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:307,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:310,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawHighlightedVertex(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Rectangle2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Rectangle2D].setFrame(double,double,double,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:320,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:323,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:324,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:322,1"
      Dst: "[java.awt.geom.Rectangle2D].setFrame(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:327,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:328,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:331,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawVertexShadow(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Ellipse2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.RectangularShape].setFrame(double,double,double,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:341,1"
      Dst: "[java.awt.geom.Ellipse2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:342,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:344,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:345,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:343,1"
      Dst: "[java.awt.geom.RectangularShape].setFrame(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:348,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:349,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawMark(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].stringWidth(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].setStroke(java.awt.Graphics2D,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[java.awt.Polygon].<init>(int[],int[],int)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:353"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:357,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:357,1"
      Dst: "[java.awt.FontMetrics].stringWidth(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:360,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:361,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:362,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:363,1"
      Dst: "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:367,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].setStroke(java.awt.Graphics2D,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:368,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:369,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:372,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:382,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:383,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:383,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:397,1"
      Dst: "[java.awt.Polygon].<init>(int[],int[],int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:400,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:402,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:407,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:218,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:219,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].transform(org.locationtech.jts.geom.Coordinate,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].setStroke(java.awt.Graphics2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Graphics2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BasicStroke].<init>(float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:43,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.AWTUtil:44,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:84,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:86,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:86,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.ColorUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Color].getRed()"
    - "[java.awt.Color].getGreen()"
    - "[java.awt.Color].getBlue()"
    - "[java.awt.Color].<init>(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getRed()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getGreen()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].getBlue()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.ColorUtil:29,1"
      Dst: "[java.awt.Color].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawRevealMask(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[java.lang.Math].min(double,double)"
    - "[java.awt.geom.Rectangle2D$Float].<init>(float,float,float,float)"
    - "[java.awt.geom.Area].<init>(java.awt.Shape)"
    - "[java.awt.geom.Area].subtract(java.awt.geom.Area)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:416,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:417,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:419,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:422,1"
      Dst: "[java.awt.geom.Rectangle2D$Float].<init>(float,float,float,float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:422,1"
      Dst: "[java.awt.geom.Area].<init>(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:432,1"
      Dst: "[java.awt.geom.Area].subtract(java.awt.geom.Area)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:433,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:434,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].draw(org.locationtech.jts.geom.Geometry,java.awt.Color,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.awt.Color"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:438,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:439,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:439,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flash(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JComponent].getGraphics()"
    - "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - "[java.awt.Graphics].setXORMode(java.awt.Color)"
    - "[java.awt.BasicStroke].<init>(float)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].viewSize(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flashPointGeom(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    - "[java.lang.Thread].sleep(long)"
    - "[java.awt.Graphics].setPaintMode()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:451"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:450"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:450"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:453"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:444,1"
      Dst: "[javax.swing.JComponent].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:445,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.ViewStyle].getBackground()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:445,1"
      Dst: "[java.awt.Graphics].setXORMode(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:446,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:449,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].viewSize(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:451,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flashPointGeom(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:454,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.GeometryPainter].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D,java.awt.Color,java.awt.Color,java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:455,1"
      Dst: "[java.lang.Thread].sleep(long)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:461,1"
      Dst: "[java.awt.Graphics].setPaintMode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].viewSize(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:465,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:466,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getDiameter()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:466,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].flashPointGeom(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - "[org.locationtech.jts.geom.Geometry].buffer(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:471,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:472,1"
      Dst: "[org.locationtech.jts.geom.Geometry].buffer(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].snapToGrid(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:477,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid:41,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.DrawingGrid].snapToGrid(java.awt.geom.Point2D,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].this_componentResized(java.awt.event.ComponentEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ComponentEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].componentResized()"
    - "[java.awt.Component].getSize()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update(java.awt.Dimension)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:481,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].componentResized()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:482,1"
      Dst: "[java.awt.Component].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:482,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update(java.awt.Dimension)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.render.RenderManager].componentResized()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.render.RenderManager"
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update(java.awt.Dimension)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Dimension"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:258,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].update()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setCurrentTool(org.locationtech.jtstest.testbuilder.ui.tools.Tool)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.ui.tools.Tool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].deactivate()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].activate(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - "[java.awt.Cursor].getPredefinedCursor(int)"
    - "[java.awt.Component].setCursor(java.awt.Cursor)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:491"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:492"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:495"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:490,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].deactivate()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:493,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.Tool].activate(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496,1"
      Dst: "[java.awt.Cursor].getPredefinedCursor(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:496,1"
      Dst: "[java.awt.Component].setCursor(java.awt.Cursor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:502"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:502"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:501,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:501,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:503,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToInput()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelope()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:507,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:507,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelope()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:507,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeResult()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeResult()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:511,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getGeomModel()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getEnvelopeAll()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:515,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:520"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:521,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:526,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:527,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:527,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:527,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:529,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:535"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:542"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:536,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:537,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:540,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:545,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:546,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoom(java.awt.geom.Point2D,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:556,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:556,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:557,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoom(java.awt.geom.Point2D,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomPan(double,double)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomPan(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:561,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:561,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomPan(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].cursorLocationString(java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScaleFormat()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.text.NumberFormat].format(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:566,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:566,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toModel(java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:567,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getScaleFormat()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.text.NumberFormat].format(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:568,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:570,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:570,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getRenderer()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.Renderer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:575,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel$GeometryEditPanelRenderer].<init>(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$000(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$100(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.ViewStyle"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$200(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.GridElement"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$300(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.Graphics2D,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawBorder(java.awt.Graphics2D,java.awt.Color)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawBorder(java.awt.Graphics2D,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawBorder(java.awt.Graphics2D,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.awt.Graphics2D"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - "[java.awt.Graphics].drawRect(int,int,int,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:276,1"
      Dst: "[java.awt.BasicStroke].<init>(float,int,int,float,float[],float)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:282,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:283,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getHeightInView()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:286,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getWidthInView()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:287,1"
      Dst: "[java.awt.Graphics].drawRect(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$400(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$500(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getLayerList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.model.LayerList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:195,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getLayers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$600(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawMark(java.awt.Graphics2D)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawMark(java.awt.Graphics2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawMark(java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.Graphics].getFontMetrics()"
    - "[java.awt.FontMetrics].stringWidth(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].setStroke(java.awt.Graphics2D,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[java.awt.Polygon].<init>(int[],int[],int)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    functionUses: 0
    ICount: 86
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:353"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:356,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:357,1"
      Dst: "[java.awt.Graphics].getFontMetrics()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:357,1"
      Dst: "[java.awt.FontMetrics].stringWidth(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:360,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:361,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:362,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:363,1"
      Dst: "[java.awt.geom.Ellipse2D$Double].<init>(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:367,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.AWTUtil].setStroke(java.awt.Graphics2D,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:368,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:369,1"
      Dst: "[java.awt.Graphics2D].draw(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:372,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getViewEnv()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:382,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:383,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:383,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:397,1"
      Dst: "[java.awt.Polygon].<init>(int[],int[],int)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:400,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:402,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.ColorUtil].opaque(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:407,1"
      Dst: "[java.awt.Graphics2D].drawString(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$700(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.LegendElement"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$800(org.locationtech.jtstest.testbuilder.GeometryEditPanel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.ui.render.TitleElement"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$900(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    - "java.awt.Graphics2D"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawHighlightedVertex(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawHighlightedVertex(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawHighlightedVertex(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Rectangle2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.Rectangle2D].setFrame(double,double,double,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:320,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:321,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:323,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:324,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:322,1"
      Dst: "[java.awt.geom.Rectangle2D].setFrame(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:327,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:328,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:331,1"
      Dst: "[java.awt.geom.Rectangle2D$Double].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].access$1000(org.locationtech.jtstest.testbuilder.GeometryEditPanel,java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    - "java.awt.Graphics2D"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawVertexShadow(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawVertexShadow(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].drawVertexShadow(java.awt.Graphics2D,org.locationtech.jts.geom.Coordinate,java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.GeometryEditPanel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Graphics2D"
    - "org.locationtech.jts.geom.Coordinate"
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.geom.Ellipse2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.geom.RectangularShape].setFrame(double,double,double,double)"
    - "[java.awt.Graphics].setColor(java.awt.Color)"
    - "[java.awt.Graphics2D].fill(java.awt.Shape)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:341,1"
      Dst: "[java.awt.geom.Ellipse2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:342,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:344,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:345,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:343,1"
      Dst: "[java.awt.geom.RectangularShape].setFrame(double,double,double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:348,1"
      Dst: "[java.awt.Graphics].setColor(java.awt.Color)"
    - Src: "org.locationtech.jtstest.testbuilder.GeometryEditPanel:349,1"
      Dst: "[java.awt.Graphics2D].fill(java.awt.Shape)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:43,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:53,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection,double)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:43,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:58,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].getIndex()"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.index.SpatialIndex"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].initBaseSegments(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodedSegmentString].size()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    - "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:79"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "size()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:78"
        BranchSideFuncs:
        - "build()"
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:74"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:76"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:75"
        BranchSideFuncs:
        - "addToIndex(org.locationtech.jts.noding.SegmentString)"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:74,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:76,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:79,1"
      Dst: "[org.locationtech.jts.index.strtree.AbstractSTRtree].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToIndex(org.locationtech.jts.noding.SegmentString)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 83
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.NodedSegmentString:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getCoordinates()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:89"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
        - "next()"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:84,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:84,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:85,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:85,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:86,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:87,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:87,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].insert(org.locationtech.jts.geom.Envelope,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].process(java.util.Collection,org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:105"
        BranchSideFuncs:
        - "addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:104"
        BranchSideFuncs:
        - "intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:101,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:102,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:102,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:103,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:103,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:105,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].addToMonoChains(org.locationtech.jts.noding.SegmentString,java.util.List)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.noding.SegmentString"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.BasicSegmentString].size()"
    - "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.BasicSegmentString:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.NodedSegmentString:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].getCoordinates()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.SegmentString].size()"
    - "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:112"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:113"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
        - "getCoordinates()"
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:119"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "next()"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:112,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].size()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:114,1"
      Dst: "[org.locationtech.jts.noding.SegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:114,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainBuilder].getChains(org.locationtech.jts.geom.Coordinate[],java.lang.Object)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:115,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:115,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:116,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:117,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].intersectChains(java.util.List,org.locationtech.jts.noding.SegmentIntersector)"
    functionSourceFile: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector"
    linkageType: null
    functionLinenumber: 122
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "org.locationtech.jts.noding.SegmentIntersector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - "[org.locationtech.jts.coverage.InvalidSegmentDetector].isDone()"
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].isDone()"
    - "[org.locationtech.jts.noding.IntersectionFinderAdder].isDone()"
    - "[org.locationtech.jts.operation.valid.PolygonIntersectionAnalyzer].isDone()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonHoleJoiner$InteriorIntersectionDetector].isDone()"
    - "[org.locationtech.jts.operation.valid.IsSimpleOp$NonSimpleIntersectionFinder].isDone()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].isDone()"
    - "[org.locationtech.jts.noding.InteriorIntersectionFinderAdder].isDone()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingIntersectionAdder].isDone()"
    - "[org.locationtech.jts.triangulate.polygon.PolygonNoder$NodeAdder].isDone()"
    - "[org.locationtech.jts.noding.IntersectionAdder].isDone()"
    - "[org.locationtech.jts.noding.snap.SnappingIntersectionAdder].isDone()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    functionUses: 1
    ICount: 27
    EdgeCount: 79
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:135"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "query(org.locationtech.jts.geom.Envelope)"
        - "getEnvelope(double)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:134"
        BranchSideFuncs:
        - "next()"
        - "isDone()"
        - "computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:133"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:123,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].<init>(org.locationtech.jts.noding.SegmentIntersector)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:125,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:125,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:126,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:127,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:128,1"
      Dst: "[org.locationtech.jts.index.strtree.STRtree].query(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:131,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - Src: "org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector:132,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersector].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    - "org.locationtech.jts.operation.buffer.BufferParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getBufferParameters()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 58
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.buffer.BufferParameters"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 74
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - "[java.lang.Math].abs(double)"
    functionUses: 3
    ICount: 28
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:78"
        BranchSideFuncs:
        - "getSegGen(double)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85"
        BranchSideFuncs:
        - "computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:84"
        BranchSideFuncs:
        - "isSingleSided()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:90"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:89"
        BranchSideFuncs:
        - "computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:86"
        BranchSideFuncs:
        - "computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:77,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:79,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:80,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:82,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:85,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:87,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:90,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:93,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].isLineOffsetEmpty(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 110
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:113"
        BranchSideFuncs:
        - "isSingleSided()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:114,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].isSingleSided()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getRingCurve(org.locationtech.jts.geom.Coordinate[],int,double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 129
    functionDepth: 13
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:135"
        BranchSideFuncs:
        - "getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:138"
        BranchSideFuncs:
        - "copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:137"
        BranchSideFuncs:
        - "computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
        - "getCoordinates()"
        - "getSegGen(double)"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:132,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getLineCurve(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:136,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:138,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:139,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:140,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getOffsetCurve(org.locationtech.jts.geom.Coordinate[],double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 144
    functionDepth: 12
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:149"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:-1"
        BranchSideFuncs:
        - "getSegGen(double)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:153"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:157"
        BranchSideFuncs:
        - "computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:156"
        BranchSideFuncs:
        - "computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:161"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:163"
        BranchSideFuncs:
        - "reverse(org.locationtech.jts.geom.Coordinate[])"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:151,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:152,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:154,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:157,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:159,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:162,1"
      Dst: "[org.locationtech.jts.geom.CoordinateArrays].reverse(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].copyCoordinates(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 167
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYM].copy()"
    - "[org.locationtech.jts.geom.CoordinateXY].copy()"
    - "[org.locationtech.jts.geom.CoordinateXYZM].copy()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:170,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].getSegGen(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 5
    returnType: "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters,double)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:177,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].<init>(org.locationtech.jts.geom.PrecisionModel,org.locationtech.jts.operation.buffer.BufferParameters,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getSimplifyFactor()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:189,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getSimplifyFactor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computePointCurve(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 192
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createCircle(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createSquare(org.locationtech.jts.geom.Coordinate)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:193,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferParameters].getEndCapStyle()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:195,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createCircle(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:198,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].createSquare(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeLineBufferCurve(org.locationtech.jts.geom.Coordinate[],org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 205
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLineEndCap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    functionUses: 1
    ICount: 43
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:218"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:234"
        BranchSideFuncs:
        - "addLineEndCap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
        - "closeRing()"
        - "addLastSegment()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:206,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:210,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:215,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:217,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:219,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:221,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLineEndCap(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:239,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeSingleSidedBufferCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 243
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addSegments(org.locationtech.jts.geom.Coordinate[],boolean)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    functionUses: 1
    ICount: 42
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:246"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:265"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "addSegments(org.locationtech.jts.geom.Coordinate[],boolean)"
        - "addFirstSegment()"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:262"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:280"
        BranchSideFuncs:
        - "closeRing()"
        - "addLastSegment()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:244,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:248,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addSegments(org.locationtech.jts.geom.Coordinate[],boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:252,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:258,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:259,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:261,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:281,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:282,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeOffsetCurve(org.locationtech.jts.geom.Coordinate[],boolean,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 286
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    - "[java.lang.Math].abs(double)"
    functionUses: 1
    ICount: 40
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:289"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:306"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "addFirstSegment()"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:300"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:302"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:317"
        BranchSideFuncs:
        - "addLastSegment()"
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:287,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:287,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:292,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:298,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:299,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addFirstSegment()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:301,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:318,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addLastSegment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].computeRingBufferCurve(org.locationtech.jts.geom.Coordinate[],int,org.locationtech.jts.operation.buffer.OffsetSegmentGenerator)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder"
    linkageType: null
    functionLinenumber: 323
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "org.locationtech.jts.operation.buffer.OffsetSegmentGenerator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    functionUses: 1
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:327"
        BranchSideFuncs:
        - "simplify(org.locationtech.jts.geom.Coordinate[],double)"
        - "initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:337"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:336"
        BranchSideFuncs:
        - "closeRing()"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:333"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:324,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetCurveBuilder].simplifyTolerance(double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:328,1"
      Dst: "[org.locationtech.jts.operation.buffer.BufferInputLineSimplifier].simplify(org.locationtech.jts.geom.Coordinate[],double)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:332,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].initSideSegments(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:335,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].addNextSegment(org.locationtech.jts.geom.Coordinate,boolean)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetCurveBuilder:337,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentGenerator].closeRing()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.index.bintree.Interval].<init>()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    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: "org.locationtech.jts.index.bintree.Interval:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Interval:31,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].<init>(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Interval:35,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].init(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:41"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:45"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:44"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getMin()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getMax()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].getWidth()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].expandToInclude(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:52"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:52"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Interval:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:54"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:53"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.bintree.Interval].overlaps(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].overlaps(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:57,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].overlaps(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].overlaps(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:62"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Interval:62"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:63"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:62"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.bintree.Interval].contains(org.locationtech.jts.index.bintree.Interval)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.bintree.Interval"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:68,1"
      Dst: "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.bintree.Interval].contains(double,double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Interval:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:71"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.bintree.Interval].contains(double)"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.bintree.Interval:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:75"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.bintree.Interval:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.bintree.Interval:75"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.index.bintree.Interval].toString()"
    functionSourceFile: "org.locationtech.jts.index.bintree.Interval"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.bintree.Interval:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.index.bintree.Interval:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.index.bintree.Interval:81,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.index.bintree.Interval:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$1].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$1].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].access$000(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].access$100(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[java.lang.Thread].isAlive()"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].access$200(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[javax.swing.Timer].stop()"
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.BusyDialog$1:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.BusyDialog$1:67"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.BusyDialog$1:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:62,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$000(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:62,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:63,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$100(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:63,1"
      Dst: "[java.lang.Thread].isAlive()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:64,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$200(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:64,1"
      Dst: "[javax.swing.Timer].stop()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$1:65,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$000(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$100(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Thread"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$200(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.Timer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:41,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.geom.MultiPoint:41,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 44
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].hasDimension(int)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiPoint:58"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiPoint:57"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiPoint].getBoundaryDimension()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 61
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].getGeometryType()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 65
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].getBoundary()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:78,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.MultiPoint:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:311,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 81
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:82,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 291
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:292,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].reverseInternal()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiPoint:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiPoint:89"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:88,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.MultiPoint:90,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 93
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiPoint:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiPoint:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.MultiPoint:96"
        BranchSideFuncs:
        - "equalsExact(org.locationtech.jts.geom.Geometry,double)"
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:94,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.MultiPoint:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.MultiPolygon].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Polygon].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.MultiPoint].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.MultiLineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.LineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Point].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 5
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:185"
        BranchSideFuncs:
        - "equalsExact(org.locationtech.jts.geom.Geometry,double)"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:181,1"
      Dst: "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.MultiPoint].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:108,1"
      Dst: "[org.locationtech.jts.geom.Point].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Point].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Point"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 24
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Point:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Point:112"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Point:113,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiPoint].copyInternal()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiPoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.MultiPoint:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.MultiPoint:115"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.MultiPoint:116,1"
      Dst: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.MultiPoint].<init>(org.locationtech.jts.geom.Point[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Point[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.MultiPoint:50,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.MultiPoint].getTypeCode()"
    functionSourceFile: "org.locationtech.jts.geom.MultiPoint"
    linkageType: null
    functionLinenumber: 119
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setPrecisionModel(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].setMinimumVertexDistance(double)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].isRedundant(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 35
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:63"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:65"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:60,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:61,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].makePrecise(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:63,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].isRedundant(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:65,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPts(org.locationtech.jts.geom.Coordinate[],boolean)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 70
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:77"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:76"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:72"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:71"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:77"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:73,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].addPt(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].isRedundant(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 92
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:94"
        BranchSideFuncs:
        - "distance(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:93,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:95,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:96,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].closeRing()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 103
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    functionUses: 3
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:105"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "equals(java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:104"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Coordinate)"
        - "equals(java.lang.Object)"
    - Branch String: "org.locationtech.jts.operation.buffer.OffsetSegmentString:107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.buffer.OffsetSegmentString:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:104,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:105,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:105,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].<init>(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:107,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:108,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].reverse()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:126,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].toString()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.Geometry].toString()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:132,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:133,1"
      Dst: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:133,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 96
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:97,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.buffer.OffsetSegmentString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.buffer.OffsetSegmentString"
    linkageType: null
    functionLinenumber: 125
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.buffer.OffsetSegmentString:126,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 611
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryFactory:612"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryFactory:611"
        BranchSideFuncs:
        - "create(org.locationtech.jts.geom.Coordinate[])"
        - "getCoordinateSequenceFactory()"
        - "createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].getCoordinateSequenceFactory()"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFactory].create(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geom.GeometryFactory:612,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLineString(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].overlayOp(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 82
    functionDepth: 20
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:83,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:84,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(org.locationtech.jts.geomgraph.Label,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 101
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:102,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:104,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 121
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:122"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:123"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:123"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:135"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:134"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 28
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 159
    functionDepth: 14
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    - "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 27
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:160,1"
      Dst: "[org.locationtech.jts.operation.GeometryGraphOperation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:141,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:146,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:148,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:161,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayNodeFactory].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:161,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].<init>(org.locationtech.jts.geomgraph.NodeFactory)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].getResultGeometry(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 180
    functionDepth: 19
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeOverlay(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:181,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeOverlay(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].getGraph()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 189
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.PlanarGraph"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeOverlay(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 196
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].copyPoints(int)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].computeSplitEdges(java.util.List)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdges(java.util.List)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelsFromDepths()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].replaceCollapsedEdges()"
    - "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid(java.util.Collection)"
    - "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelling()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNodes()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].findResultAreaEdges(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].cancelDuplicateResultEdges()"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(org.locationtech.jts.geomgraph.PlanarGraph)"
    - "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - "[org.locationtech.jts.operation.overlay.LineBuilder].build(int)"
    - "[org.locationtech.jts.operation.overlay.PointBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - "[org.locationtech.jts.operation.overlay.PointBuilder].build(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].computeGeometry(java.util.List,java.util.List,java.util.List,int)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 65
    EdgeCount: 26
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:197,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].copyPoints(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:201,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSelfNodes(org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:205,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeEdgeIntersections(org.locationtech.jts.geomgraph.GeometryGraph,org.locationtech.jts.algorithm.LineIntersector,boolean)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:207,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:208,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].computeSplitEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:212,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:214,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelsFromDepths()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:215,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].replaceCollapsedEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:229,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:229,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeNodingValidator].checkValid(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:231,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].addEdges(java.util.List)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:232,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelling()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:234,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:244,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].findResultAreaEdges(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:245,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].cancelDuplicateResultEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:247,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:248,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].add(org.locationtech.jts.geomgraph.PlanarGraph)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:249,1"
      Dst: "[org.locationtech.jts.operation.overlay.PolygonBuilder].getPolygons()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:251,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:252,1"
      Dst: "[org.locationtech.jts.operation.overlay.LineBuilder].build(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:254,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].<init>(org.locationtech.jts.operation.overlay.OverlayOp,org.locationtech.jts.geom.GeometryFactory,org.locationtech.jts.algorithm.PointLocator)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:255,1"
      Dst: "[org.locationtech.jts.operation.overlay.PointBuilder].build(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:258,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].computeGeometry(java.util.List,java.util.List,java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdges(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:267"
        BranchSideFuncs:
        - "insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:263,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:264,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:265,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].insertUniqueEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 278
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].flip()"
    - "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - "[org.locationtech.jts.geomgraph.Depth].add(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    functionUses: 1
    ICount: 24
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:282"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:309"
        BranchSideFuncs:
        - "isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:308"
        BranchSideFuncs:
        - "add(org.locationtech.jts.geomgraph.Edge)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:292"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.Label)"
        - "getLabel()"
        - "flip()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:291"
        BranchSideFuncs:
        - "isNull()"
        - "getDepth()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:295"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:299"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:298"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "add(org.locationtech.jts.geomgraph.Label)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:279,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:283,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:288,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isPointwiseEqual(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:289,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:290,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].flip()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:292,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:295,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:296,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].add(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:300,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:309,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelsFromDepths()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 345
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - "[org.locationtech.jts.geomgraph.Depth].normalize()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    - "[org.locationtech.jts.geomgraph.Depth].getDelta(int)"
    - "[org.locationtech.jts.geomgraph.Label].toLine(int)"
    - "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.geomgraph.Depth].getLocation(int,int)"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 44
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:346"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:384"
        BranchSideFuncs:
        - "next()"
        - "getLabel()"
        - "isNull()"
        - "getDepth()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:355"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:383"
        BranchSideFuncs:
        - "normalize()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:357"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:383"
        BranchSideFuncs:
        - "isNull(int)"
        - "isArea()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:355"
        BranchSideFuncs:
        - "normalize()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:355"
        BranchSideFuncs:
        - "normalize()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:358"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:355"
        BranchSideFuncs:
        - "normalize()"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:365"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:375"
        BranchSideFuncs:
        - "toLine(int)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:375"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:375"
        BranchSideFuncs:
        - "isNull(int,int)"
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:377"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:375"
        BranchSideFuncs:
        - "getLocation(int,int)"
        - "isNull(int,int)"
        - "setLocation(int,int,int)"
        - "isTrue(boolean,java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:374"
        BranchSideFuncs:
        - "isNull(int,int)"
        - "isTrue(boolean,java.lang.String)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:346,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:346,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:347,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:348,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:349,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getDepth()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:355,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:356,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].normalize()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:358,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:358,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:358,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:365,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].getDelta(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:366,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].toLine(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:375,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].isNull(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:375,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:376,1"
      Dst: "[org.locationtech.jts.geomgraph.Depth].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:376,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 10
    BBCount: 20
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].replaceCollapsedEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 390
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Edge].isCollapsed()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].remove()"
    - "[org.jdom2.ContentList$CLIterator].remove()"
    - "[org.jdom2.AttributeList$ALIterator].remove()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].remove()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].remove()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].remove()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].remove()"
    - "[org.jdom2.FilterIterator].remove()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].remove()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].remove()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].remove()"
    - "[org.jdom2.ContentList$FilterListIterator].remove()"
    - "[org.jdom2.DescendantIterator].remove()"
    - "[org.jdom2.ContentList$CLListIterator].remove()"
    - "[org.locationtech.jts.geomgraph.Edge].getCollapsedEdge()"
    - "[org.locationtech.jts.geomgraph.EdgeList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].remove()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:400"
        BranchSideFuncs:
        - "isCollapsed()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:399"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:394"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:391,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:392,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:392,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:393,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:394,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].isCollapsed()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:396,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:397,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCollapsedEdge()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:397,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:400,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].copyPoints(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 412
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.PlanarGraph].addNode(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 17
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:413"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:418"
        BranchSideFuncs:
        - "addNode(org.locationtech.jts.geom.Coordinate)"
        - "getLabel()"
        - "next()"
        - "getCoordinate()"
        - "getLocation(int)"
        - "setLabel(int,int)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:413,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodeIterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:413,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:414,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:415,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:415,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].addNode(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:416,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:416,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:416,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].setLabel(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeLabelling()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 428
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].mergeSymLabels()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].updateNodeLabelling()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:429"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:434"
        BranchSideFuncs:
        - "getEdges()"
        - "computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:433"
        BranchSideFuncs:
        - "updateNodeLabelling()"
        - "mergeSymLabels()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:429,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:429,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:429,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:430,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:432,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:432,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].computeLabelling(org.locationtech.jts.geomgraph.GeometryGraph[])"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:434,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].mergeSymLabels()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:435,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].updateNodeLabelling()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].mergeSymLabels()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 444
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].mergeSymLabels()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 13
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:445"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:450"
        BranchSideFuncs:
        - "getEdges()"
        - "next()"
        - "mergeSymLabels()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:449"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:445,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:445,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:445,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:446,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:447,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:447,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].mergeSymLabels()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].updateNodeLabelling()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 456
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getLabel()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 15
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:457"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:462"
        BranchSideFuncs:
        - "merge(org.locationtech.jts.geomgraph.Label)"
        - "getEdges()"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:461"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:457,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:457,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:457,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:458,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:459,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:459,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:460,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:460,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].merge(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNodes()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 481
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    - "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    - "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - "[org.locationtech.jts.geomgraph.DirectedEdgeStar].updateLabelling(org.locationtech.jts.geomgraph.Label)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:482"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:503"
        BranchSideFuncs:
        - "getLabel()"
        - "isIsolated()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:502"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:485"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:492"
        BranchSideFuncs:
        - "getEdges()"
        - "updateLabelling(org.locationtech.jts.geomgraph.Label)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:489"
        BranchSideFuncs:
        - "labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:482,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getNodes()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:482,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:482,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:483,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:484,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:485,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].isIsolated()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:487,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isNull(int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:488,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:493,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getEdges()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:493,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdgeStar].updateLabelling(org.locationtech.jts.geomgraph.Label)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].labelIncompleteNode(org.locationtech.jts.geomgraph.Node,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 509
    functionDepth: 13
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geomgraph.Node"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:510,1"
      Dst: "[org.locationtech.jts.geomgraph.Node].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:510,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:510,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:514,1"
      Dst: "[org.locationtech.jts.geomgraph.GraphComponent].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:514,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].setLocation(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].findResultAreaEdges(int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 526
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[org.locationtech.jts.geomgraph.Label].isArea()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    - "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 21
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:527"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:541"
        BranchSideFuncs:
        - "isArea()"
        - "getLabel()"
        - "next()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:540"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:531"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:540"
        BranchSideFuncs:
        - "isInteriorAreaEdge()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:532"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:539"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:533"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:539"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:527,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:527,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:527,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:528,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:530,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:531,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].isArea()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:532,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInteriorAreaEdge()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:534,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].getLocation(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:533,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isResultOfOp(int,int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:537,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 8
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].cancelDuplicateResultEdges()"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 549
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 17
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:550"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:559"
        BranchSideFuncs:
        - "isInResult()"
        - "next()"
        - "getSym()"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:558"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:558"
        BranchSideFuncs:
        - "setInResult(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:557"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:553"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:558"
        BranchSideFuncs:
        - "setInResult(boolean)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:557"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:550,1"
      Dst: "[org.locationtech.jts.geomgraph.PlanarGraph].getEdgeEnds()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:550,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:550,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:551,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:552,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:553,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].isInResult()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:554,1"
      Dst: "[org.locationtech.jts.geomgraph.DirectedEdge].setInResult(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByLA(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 567
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:568"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:569"
        BranchSideFuncs:
        - "isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:568"
        BranchSideFuncs:
        - "isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:569"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:570"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:569"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:568,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isCoveredByA(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 579
    functionDepth: 14
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:580"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:581"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:580"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:580,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].isCovered(org.locationtech.jts.geom.Coordinate,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 588
    functionDepth: 13
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].hasNext()"
    - "[org.jdom2.DescendantIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].hasNext()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 14
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:589"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:594"
        BranchSideFuncs:
        - "next()"
        - "locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:593"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:592"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:593"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:592"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:589,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:589,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:590,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:591,1"
      Dst: "[org.locationtech.jts.algorithm.PointLocator].locate(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].computeGeometry(java.util.List,java.util.List,java.util.List,int)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 601
    functionDepth: 11
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].isEmpty()"
    functionUses: 1
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlay.OverlayOp:609"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:614"
        BranchSideFuncs:
        - "getGeometry()"
        - "createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlay.OverlayOp:613"
        BranchSideFuncs:
        - "buildGeometry(java.util.Collection)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:602,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:604,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:609,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:610,1"
      Dst: "[org.locationtech.jts.geomgraph.GeometryGraph].getGeometry()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:610,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:614,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].createEmptyResult(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 640
    functionDepth: 10
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 4
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlay.OverlayOp].resultDimension(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:641,1"
      Dst: "[org.locationtech.jts.operation.overlay.OverlayOp].resultDimension(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:646,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createEmpty(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlay.OverlayOp].resultDimension(int,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.overlay.OverlayOp"
    linkageType: null
    functionLinenumber: 650
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.geom.MultiPoint].getDimension()"
    - "[org.locationtech.jts.geom.LineString].getDimension()"
    - "[org.locationtech.jts.geom.Point].getDimension()"
    - "[org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiPolygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:651,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:657,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "org.locationtech.jts.operation.overlay.OverlayOp:660,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 6
  - functionName: "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure"
    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: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].measure(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].diagonalSize(org.locationtech.jts.geom.Envelope)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:56"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:55,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:58,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:58,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:59,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:60,1"
      Dst: "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].diagonalSize(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "double"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:67,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:68,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].setDensifyFraction(double)"
    - Src: "org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance:69,1"
      Dst: "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance].distance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    - "[java.lang.Object].<init>()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:165,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:166,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].diagonalSize(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:71,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:73,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:76,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure].diagonalSize(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getWidth()"
    - "[org.locationtech.jts.geom.Envelope].getHeight()"
    - "[java.lang.Math].sqrt(double)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:71"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:71,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:73,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getWidth()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:74,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getHeight()"
    - Src: "org.locationtech.jts.algorithm.match.HausdorffSimilarityMeasure:76,1"
      Dst: "[java.lang.Math].sqrt(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:79,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.geom.Polygon:79,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:99,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.geom.Polygon:99,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[org.locationtech.jts.geom.Geometry].hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:118"
        BranchSideFuncs:
        - "getFactory()"
        - "createLinearRing()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:120"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.Polygon:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:123"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    - Branch String: "org.locationtech.jts.geom.Polygon:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.Polygon:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Polygon:116,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    - Src: "org.locationtech.jts.geom.Polygon:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.Polygon:122,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Polygon:124,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.Polygon:124,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:132,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionUses: 5
    ICount: 37
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:136"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:139"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:138"
        BranchSideFuncs:
        - "getNumPoints()"
    - Branch String: "org.locationtech.jts.geom.Polygon:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:146"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:153"
        BranchSideFuncs:
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:152"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:148"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:136,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.geom.Polygon:139,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    - Src: "org.locationtech.jts.geom.Polygon:141,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:157,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 94
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].toCoordinateArray()"
    - "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:95,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 156
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:157,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getDimension()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 44
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getBoundaryDimension()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 168
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].isRectangle()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getX(int)"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getY(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getY(int)"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    functionUses: 5
    ICount: 58
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:178"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:179"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:178"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:179"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:180"
        BranchSideFuncs:
        - "getNumPoints()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:179"
        BranchSideFuncs:
        - "getNumPoints()"
    - Branch String: "org.locationtech.jts.geom.Polygon:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:181"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.geom.Polygon:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:194"
        BranchSideFuncs:
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:193"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:189"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:188"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
    - Branch String: "org.locationtech.jts.geom.Polygon:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:189"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:188"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
    - Branch String: "org.locationtech.jts.geom.Polygon:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:181"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.geom.Polygon:190"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:181"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "getEnvelopeInternal()"
    - Branch String: "org.locationtech.jts.geom.Polygon:196"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:206"
        BranchSideFuncs:
        - "getX(int)"
        - "getY(int)"
      - BranchSide: "org.locationtech.jts.geom.Polygon:205"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:196"
        BranchSideFuncs:
        - "getX(int)"
        - "getY(int)"
    - Branch String: "org.locationtech.jts.geom.Polygon:200"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:199"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:198"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:201"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:178,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.Polygon:180,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.geom.Polygon:182,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.Polygon:185,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.geom.Polygon:187,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getX(int)"
    - Src: "org.locationtech.jts.geom.Polygon:188,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Polygon:188,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Polygon:189,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getY(int)"
    - Src: "org.locationtech.jts.geom.Polygon:190,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Polygon:190,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 27
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 14
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:128,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 314
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 324
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMinY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 334
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 344
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getGeometryType()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 221
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getArea()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 6
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:233,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.Polygon:233,1"
      Dst: "[org.locationtech.jts.algorithm.Area].ofRing(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 247
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getLength()"
    functionUses: 3
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:251"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:248,1"
      Dst: "[org.locationtech.jts.geom.LineString].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:171,1"
      Dst: "[org.locationtech.jts.algorithm.Length].ofLine(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getBoundary()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 261
    functionDepth: 5
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionUses: 3
    ICount: 32
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:265"
        BranchSideFuncs:
        - "createMultiLineString()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:264"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:270"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:273"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.Polygon:272"
        BranchSideFuncs:
        - "createMultiLineString(org.locationtech.jts.geom.LineString[])"
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:262,1"
      Dst: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - Src: "org.locationtech.jts.geom.Polygon:263,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Polygon:263,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    - Src: "org.locationtech.jts.geom.Polygon:272,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.Polygon:272,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.Polygon:273,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Polygon].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:173,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 290
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:291,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 379
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:380,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].<init>(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createMultiLineString(org.locationtech.jts.geom.LineString[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.MultiLineString"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:302,1"
      Dst: "[org.locationtech.jts.geom.MultiLineString].<init>(org.locationtech.jts.geom.LineString[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].computeEnvelopeInternal()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 276
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:277,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 280
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.LineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 2
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:281"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:284"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:287"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:290"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:289"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:290"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:293"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:298"
        BranchSideFuncs:
        - "equalsExact(org.locationtech.jts.geom.Geometry,double)"
      - BranchSide: "org.locationtech.jts.geom.Polygon:297"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:294"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:292"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:281,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.Polygon:287,1"
      Dst: "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 12
  - functionName: "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 301
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 3
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:305"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:302,1"
      Dst: "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 241
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.util.UniqueCoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$CommonCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$VertexCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jtstest.testbuilder.topostretch.TopologyStretcher$VertexInMaskCountCoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayMixedPoints$1].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxPointDistanceFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.CoordinateCountFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxPointDistanceFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.util.CoordinateArrayFilter].filter(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionUses: 5
    ICount: 12
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:242,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.LineString:243,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.geom.LineString:243,1"
      Dst: "[org.locationtech.jts.geom.CoordinateFilter].filter(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 309
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isDone()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].isDone()"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].isDone()"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].isDone()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isDone()"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].isDone()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].isDone()"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isDone()"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isDone()"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isDone()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isDone()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].isDone()"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].isGeometryChanged()"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isGeometryChanged()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].isGeometryChanged()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].isGeometryChanged()"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isGeometryChanged()"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].isGeometryChanged()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isGeometryChanged()"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].isDone()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    functionUses: 6
    ICount: 22
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:318"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:317"
        BranchSideFuncs:
        - "isGeometryChanged()"
    - Branch String: "org.locationtech.jts.geom.Polygon:312"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:318"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
        - "isDone()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:317"
        BranchSideFuncs:
        - "isGeometryChanged()"
    - Branch String: "org.locationtech.jts.geom.Polygon:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:312"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:311"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:318"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:320"
        BranchSideFuncs:
        - "geometryChanged()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:310,1"
      Dst: "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.geom.Polygon:311,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].isDone()"
    - Src: "org.locationtech.jts.geom.Polygon:318,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    - Src: "org.locationtech.jts.geom.Polygon:319,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 248
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.util.AffineTransformation].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.coverage.VertexRingCounter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isDone()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].isDone()"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].isDone()"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].isDone()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isDone()"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].isDone()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].isDone()"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isDone()"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isDone()"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isDone()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isDone()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].isDone()"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].isGeometryChanged()"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isGeometryChanged()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].isGeometryChanged()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].isGeometryChanged()"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isGeometryChanged()"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].isGeometryChanged()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isGeometryChanged()"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].isDone()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    functionUses: 8
    ICount: 21
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:250"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.LineString:251"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:256"
        BranchSideFuncs:
        - "filter(org.locationtech.jts.geom.CoordinateSequence,int)"
        - "isDone()"
      - BranchSide: "org.locationtech.jts.geom.LineString:255"
        BranchSideFuncs:
        - "isGeometryChanged()"
    - Branch String: "org.locationtech.jts.geom.LineString:253"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:251"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:250"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.LineString:256"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:258"
        BranchSideFuncs:
        - "geometryChanged()"
      - BranchSide: "org.locationtech.jts.geom.LineString:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:249,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.LineString:252,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].filter(org.locationtech.jts.geom.CoordinateSequence,int)"
    - Src: "org.locationtech.jts.geom.LineString:253,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].isDone()"
    - Src: "org.locationtech.jts.geom.LineString:256,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    - Src: "org.locationtech.jts.geom.LineString:257,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 322
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PointExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.InputExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.GeometryFunctions$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionUses: 4
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:323,1"
      Dst: "[org.locationtech.jts.geom.GeometryFilter].filter(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 326
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryComponentFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineMerger$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.dissolve.LineDissolver$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionUses: 5
    ICount: 15
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:327,1"
      Dst: "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.Polygon:328,1"
      Dst: "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 264
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryComponentFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineMerger$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.dissolve.LineDissolver$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    functionUses: 7
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:265,1"
      Dst: "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].clone()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 342
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:343,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].copyInternal()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 346
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 22
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:349"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:351"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:347,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.Polygon:352,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 113
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[org.locationtech.jts.geom.Geometry].hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:118"
        BranchSideFuncs:
        - "getFactory()"
        - "createLinearRing()"
      - BranchSide: "org.locationtech.jts.geom.Polygon:117"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:121"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:120"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.Polygon:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:124"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:123"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    - Branch String: "org.locationtech.jts.geom.Polygon:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:126"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:114,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.Polygon:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Polygon:116,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createLinearRing()"
    - Src: "org.locationtech.jts.geom.Polygon:121,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.Polygon:122,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.geom.Polygon:124,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.Polygon:124,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNonEmptyElements(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.Polygon].convexHull()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.Geometry].convexHull()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:356,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.Polygon:356,1"
      Dst: "[org.locationtech.jts.geom.Geometry].convexHull()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].normalize()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 359
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].normalized(org.locationtech.jts.geom.LinearRing,boolean)"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    functionUses: 2
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:361"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:363"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:360,1"
      Dst: "[org.locationtech.jts.geom.Polygon].normalized(org.locationtech.jts.geom.LinearRing,boolean)"
    - Src: "org.locationtech.jts.geom.Polygon:364,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].normalized(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Polygon].normalize(org.locationtech.jts.geom.LinearRing,boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:418,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.Polygon:419,1"
      Dst: "[org.locationtech.jts.geom.Polygon].normalize(org.locationtech.jts.geom.LinearRing,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].normalize(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 423
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:424"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:428"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:427"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.Polygon:431"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:433"
        BranchSideFuncs:
        - "reverse(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.Polygon:432"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:424,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.Polygon:428,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.Polygon:429,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Polygon:429,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.geom.Polygon:430,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    - Src: "org.locationtech.jts.geom.Polygon:431,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.Polygon:432,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.LineString].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 78
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:124"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:123"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:124,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.CoordinateSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 274
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:284"
        BranchSideFuncs:
        - "getCoordinate(int)"
        - "compareTo(org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:283"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:279"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:278,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:279,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 323
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].copy()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].copy()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getDimension()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].setOrdinate(int,int,double)"
    - "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    functionUses: 1
    ICount: 34
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:326"
        BranchSideFuncs:
        - "copy()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:327"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:326"
        BranchSideFuncs:
        - "copy()"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:333"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:339"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:335"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:329"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:340"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:344"
        BranchSideFuncs:
        - "getDimension()"
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:343"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:327,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].copy()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:330,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:335,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:336,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].setOrdinate(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 16
  - functionName: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getCoordinate(int)"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].getOrdinate(int,int)"
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    functionUses: 7
    ICount: 69
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.Orientation:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:169"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:174"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:184"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:190"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:194"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:192"
        BranchSideFuncs:
        - "getOrdinate(int,int)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:196"
        BranchSideFuncs:
        - "getCoordinate(int)"
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:195"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:217"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:216"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.Orientation:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:224"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:225"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:223"
        BranchSideFuncs:
        - "index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.algorithm.Orientation:232"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.Orientation:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:153,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.algorithm.Orientation:165,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:170,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getOrdinate(int,int)"
    - Src: "org.locationtech.jts.algorithm.Orientation:209,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.algorithm.Orientation:224,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 11
    BBCount: 29
  - functionName: "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequences"
    linkageType: null
    functionLinenumber: 30
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double:org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 4
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:31"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:32"
        BranchSideFuncs:
        - "size()"
    - Branch String: "org.locationtech.jts.geom.CoordinateSequences:35"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequences:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequences:31,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequences:36,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].swap(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.Polygon].compareToSameClass(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].compareToSameClass(java.lang.Object)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:374"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:384"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:378"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:384"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:385"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:386"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:387"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:386"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:372,1"
      Dst: "[org.locationtech.jts.geom.LineString].compareToSameClass(java.lang.Object)"
    - Src: "org.locationtech.jts.geom.Polygon:375,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.Polygon:379,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LineString].compareToSameClass(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.LineString:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineString:314"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:322"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:321"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineString:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:319"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineString:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:325"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:324"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.LineString:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.LineString:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.LineString:327"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:314,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.LineString:315,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getCoordinate(int)"
    - Src: "org.locationtech.jts.geom.LineString:315,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.Coordinate].compareTo(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 380
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Coordinate:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:381"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:382"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Coordinate:384"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Coordinate:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Coordinate:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.locationtech.jts.geom.CoordinateSequenceComparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:396"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:407"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:401"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:408"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:407"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:405"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:406"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:405"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:408"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:409"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:408"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Polygon:409"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:410"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:409"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:395,1"
      Dst: "[org.locationtech.jts.geom.LineString].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    - Src: "org.locationtech.jts.geom.Polygon:398,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.Polygon:402,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.LineString].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    functionSourceFile: "org.locationtech.jts.geom.LineString"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.locationtech.jts.geom.CoordinateSequenceComparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LineString:334,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateSequenceComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - "[org.locationtech.jts.geom.CoordinateSequenceComparator].compareCoordinate(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:106"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:105"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:106"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:115"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:113"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:116"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.CoordinateSequenceComparator:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.CoordinateSequenceComparator:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:88,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:91,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].getDimension()"
    - Src: "org.locationtech.jts.geom.CoordinateSequenceComparator:112,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceComparator].compareCoordinate(org.locationtech.jts.geom.CoordinateSequence,org.locationtech.jts.geom.CoordinateSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 20
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getTypeCode()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 413
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].normalized(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 417
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.Polygon].normalize(org.locationtech.jts.geom.LinearRing,boolean)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:418,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.Polygon:419,1"
      Dst: "[org.locationtech.jts.geom.Polygon].normalize(org.locationtech.jts.geom.LinearRing,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].normalize(org.locationtech.jts.geom.LinearRing,boolean)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 423
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Float].size()"
    - "[org.locationtech.jts.operation.distance3d.AxisPlaneCoordinateSequence].size()"
    - "[org.locationtech.jts.geom.impl.PackedCoordinateSequence$Double].size()"
    - "[org.locationtech.jts.geom.impl.CoordinateArraySequence].size()"
    - "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    - "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    - "[org.locationtech.jts.geom.CoordinateSequence].size()"
    functionUses: 1
    ICount: 15
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:424"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:428"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Polygon:427"
        BranchSideFuncs:
        - "getCoordinateSequence()"
        - "minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
        - "isCCW(org.locationtech.jts.geom.CoordinateSequence)"
        - "scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.Polygon:431"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:433"
        BranchSideFuncs:
        - "reverse(org.locationtech.jts.geom.CoordinateSequence)"
      - BranchSide: "org.locationtech.jts.geom.Polygon:432"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:424,1"
      Dst: "[org.locationtech.jts.geom.LineString].isEmpty()"
    - Src: "org.locationtech.jts.geom.Polygon:428,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateSequence()"
    - Src: "org.locationtech.jts.geom.Polygon:429,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequence].size()"
    - Src: "org.locationtech.jts.geom.Polygon:429,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].minCoordinateIndex(org.locationtech.jts.geom.CoordinateSequence,int,int)"
    - Src: "org.locationtech.jts.geom.Polygon:430,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].scroll(org.locationtech.jts.geom.CoordinateSequence,int,boolean)"
    - Src: "org.locationtech.jts.geom.Polygon:431,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].isCCW(org.locationtech.jts.geom.CoordinateSequence)"
    - Src: "org.locationtech.jts.geom.Polygon:432,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequences].reverse(org.locationtech.jts.geom.CoordinateSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.Polygon].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:436,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].reverseInternal()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 8
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - "[org.locationtech.jts.geom.LinearRing].reverse()"
    - "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Polygon:443"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Polygon:446"
        BranchSideFuncs:
        - "createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
        - "getFactory()"
    Callsites:
    - Src: "org.locationtech.jts.geom.Polygon:441,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    - Src: "org.locationtech.jts.geom.Polygon:441,1"
      Dst: "[org.locationtech.jts.geom.LinearRing].reverse()"
    - Src: "org.locationtech.jts.geom.Polygon:442,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    - Src: "org.locationtech.jts.geom.Polygon:444,1"
      Dst: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    - Src: "org.locationtech.jts.geom.Polygon:447,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.geom.Polygon:447,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Polygon].getExteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.LinearRing].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.LinearRing"
    linkageType: null
    functionLinenumber: 137
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].reverse()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.LinearRing:138,1"
      Dst: "[org.locationtech.jts.geom.LineString].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getNumInteriorRing()"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Polygon].getInteriorRingN(int)"
    functionSourceFile: "org.locationtech.jts.geom.Polygon"
    linkageType: null
    functionLinenumber: 217
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.LinearRing"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryFactory].createPolygon(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[])"
    functionSourceFile: "org.locationtech.jts.geom.GeometryFactory"
    linkageType: null
    functionLinenumber: 466
    functionDepth: 7
    returnType: "org.locationtech.jts.geom.Polygon"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.LinearRing"
    - "org.locationtech.jts.geom.LinearRing[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryFactory:467,1"
      Dst: "[org.locationtech.jts.geom.Polygon].<init>(org.locationtech.jts.geom.LinearRing,org.locationtech.jts.geom.LinearRing[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer].<init>(org.locationtech.jtstest.testbuilder.model.GeometryEditModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer].getGeometry()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.ResultGeometryContainer:29,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.GeometryEditModel:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].<init>()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:65,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].<init>()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:72,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].reset()"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - "[java.util.HashMap].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:77,1"
      Dst: "[org.jdom2.xpath.jaxen.JDOMCoreNavigator].reset()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:78,1"
      Dst: "[java.util.HashMap].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].setContext(java.lang.Object)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].clear()"
    - "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - "[org.jdom2.Element].getNamespacesInScope()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:85"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:86"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:87"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:89"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:90"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:91"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:95"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:82,1"
      Dst: "[java.util.HashMap].clear()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:86,1"
      Dst: "[org.jdom2.NamespaceAware].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.xpath.jaxen.NamespaceContainer].getParentElement()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:88,1"
      Dst: "[org.jdom2.Element].getNamespacesInScope()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:91,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:92,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 9
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].includeNamespace(org.jdom2.Namespace)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Namespace"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.Namespace].getPrefix()"
    - "[org.jdom2.Namespace].getURI()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:98,1"
      Dst: "[org.jdom2.Namespace].getPrefix()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:98,1"
      Dst: "[org.jdom2.Namespace].getURI()"
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:98,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.xpath.jaxen.JDOMNavigator].translateNamespacePrefixToUri(java.lang.String)"
    functionSourceFile: "org.jdom2.xpath.jaxen.JDOMNavigator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:103"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:106"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:105"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.xpath.jaxen.JDOMNavigator:107"
      Branch Sides:
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:110"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.xpath.jaxen.JDOMNavigator:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.xpath.jaxen.JDOMNavigator:106,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].createNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:136,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].valueOf(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].parse(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:149,1"
      Dst: "[org.locationtech.jts.math.DD].parse(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].parse(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[org.locationtech.jts.math.DD].<init>()"
    - "[java.lang.Character].isDigit(char)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(double)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jts.math.DD].pow(int)"
    - "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].negate()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1337"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1373"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1393"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1402"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1401"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1407"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1406"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1410"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1409"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1331,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.math.DD:1334,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.math.DD:1334,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "org.locationtech.jts.math.DD:1349,1"
      Dst: "[org.locationtech.jts.math.DD].<init>()"
    - Src: "org.locationtech.jts.math.DD:1360,1"
      Dst: "[java.lang.Character].isDigit(char)"
    - Src: "org.locationtech.jts.math.DD:1362,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1364,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double)"
    - Src: "org.locationtech.jts.math.DD:1374,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.math.DD:1377,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1384,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.math.DD:1384,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.math.DD:1399,1"
      Dst: "[org.locationtech.jts.math.DD].pow(int)"
    - Src: "org.locationtech.jts.math.DD:1400,1"
      Dst: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1404,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1408,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 31
  - functionName: "[org.locationtech.jts.math.DD].<init>()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.math.DD].init(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:179,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:180,1"
      Dst: "[org.locationtech.jts.math.DD].init(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 254
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 490
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:491,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 358
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].pow(int)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].reciprocal()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:824"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:827"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:826"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:831"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:841"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:833"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:846"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:845"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:834"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:837"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:836"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:838"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:833"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:832"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:846"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:848"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:847"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:825,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:827,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:829,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.math.DD:835,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:839,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.math.DD:847,1"
      Dst: "[org.locationtech.jts.math.DD].reciprocal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:210,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:211,1"
      Dst: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].sqr()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 747
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:748,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].reciprocal()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:614,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:200,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:201,1"
      Dst: "[org.locationtech.jts.math.DD].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 530
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 42
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:539,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:465"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
      - BranchSide: "org.locationtech.jts.math.DD:464"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].negate()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 451
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:453"
        BranchSideFuncs:
        - "<init>(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:452"
        BranchSideFuncs:
        - "<init>(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:452,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:453,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.math.DD].init(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:179,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:180,1"
      Dst: "[org.locationtech.jts.math.DD].init(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double)"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:189,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:190,1"
      Dst: "[org.locationtech.jts.math.DD].init(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:200,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:201,1"
      Dst: "[org.locationtech.jts.math.DD].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:210,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:211,1"
      Dst: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].parse(java.lang.String)"
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:223,1"
      Dst: "[org.locationtech.jts.math.DD].parse(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:223,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:234,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].clone()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:245,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 2
  - functionName: "[org.locationtech.jts.math.DD].init(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 254
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 260
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 266
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].setValue(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:295,1"
      Dst: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 266
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].setValue(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:306,1"
      Dst: "[org.locationtech.jts.math.DD].init(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].init(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 254
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 318
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:319,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:319,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].add(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 329
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 343
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:344,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 358
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 374
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].negate()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].subtract(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 410
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].add(double)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:411,1"
      Dst: "[org.locationtech.jts.math.DD].add(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 425
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 7
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:426"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:427"
        BranchSideFuncs:
        - "selfAdd(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:426"
        BranchSideFuncs:
        - "selfAdd(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:426,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:427,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].selfSubtract(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 440
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:442"
        BranchSideFuncs:
        - "selfAdd(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:441"
        BranchSideFuncs:
        - "selfAdd(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:441,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:442,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].negate()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 451
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:453"
        BranchSideFuncs:
        - "<init>(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:452"
        BranchSideFuncs:
        - "<init>(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:452,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:453,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:465"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
      - BranchSide: "org.locationtech.jts.math.DD:464"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].multiply(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 475
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    - "[java.lang.Double].isNaN(double)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:476"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:477"
        BranchSideFuncs:
        - "selfMultiply(double,double)"
        - "copy(org.locationtech.jts.math.DD)"
      - BranchSide: "org.locationtech.jts.math.DD:476"
        BranchSideFuncs:
        - "selfMultiply(double,double)"
        - "copy(org.locationtech.jts.math.DD)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:476,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.math.DD:476,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:477,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:477,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 490
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:491,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 504
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:505,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 510
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 530
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 42
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:539,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].divide(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:550"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:551"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:550"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:550,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.math.DD:550,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:551,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:551,1"
      Dst: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].createNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 135
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:136,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 233
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:234,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 584
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfDivide(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 564
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:565,1"
      Dst: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfDivide(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:579,1"
      Dst: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 584
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfDivide(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 584
    functionDepth: 0
    returnType: "org.locationtech.jts.math.DD"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 36
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].reciprocal()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:614,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].floor()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[java.lang.Math].floor(double)"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:632"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:633"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:632"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:640"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:639"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:632,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:633,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.math.DD:640,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:200,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:201,1"
      Dst: "[org.locationtech.jts.math.DD].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].ceil()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[java.lang.Math].ceil(double)"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:656"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:657"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:656"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:660"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:664"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:663"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:656,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:657,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.math.DD:664,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 199
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:200,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:201,1"
      Dst: "[org.locationtech.jts.math.DD].init(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].signum()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 679
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:680"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:681"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:680"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:681"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:682"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:681"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:682"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:683"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:682"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:683"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:684"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:683"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.math.DD].rint()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].add(double)"
    - "[org.locationtech.jts.math.DD].floor()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:699"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:700"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:699,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:701,1"
      Dst: "[org.locationtech.jts.math.DD].add(double)"
    - Src: "org.locationtech.jts.math.DD:702,1"
      Dst: "[org.locationtech.jts.math.DD].floor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].add(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 329
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].floor()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[java.lang.Math].floor(double)"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:632"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:633"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:632"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:640"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:639"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:632,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:633,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.math.DD:640,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].trunc()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].isPositive()"
    - "[org.locationtech.jts.math.DD].floor()"
    - "[org.locationtech.jts.math.DD].ceil()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:717"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:718"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:717"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:718"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:721"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:720"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:717,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:718,1"
      Dst: "[org.locationtech.jts.math.DD].isPositive()"
    - Src: "org.locationtech.jts.math.DD:719,1"
      Dst: "[org.locationtech.jts.math.DD].floor()"
    - Src: "org.locationtech.jts.math.DD:721,1"
      Dst: "[org.locationtech.jts.math.DD].ceil()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].isPositive()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:972"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:971"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:972"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:972"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].floor()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[java.lang.Math].floor(double)"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:632"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:633"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:632"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:636"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:640"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:639"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:632,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:633,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.math.DD:640,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].ceil()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[java.lang.Math].ceil(double)"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:656"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:657"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:656"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:660"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:664"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:663"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:656,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:657,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "org.locationtech.jts.math.DD:664,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].abs()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].isNegative()"
    - "[org.locationtech.jts.math.DD].negate()"
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:735"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:736"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:735"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:736"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:738"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:737"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:735,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:736,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    - Src: "org.locationtech.jts.math.DD:737,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    - Src: "org.locationtech.jts.math.DD:738,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].isNegative()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:961"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].negate()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 451
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:452"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:453"
        BranchSideFuncs:
        - "<init>(double,double)"
      - BranchSide: "org.locationtech.jts.math.DD:452"
        BranchSideFuncs:
        - "<init>(double,double)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:452,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:453,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:210,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.math.DD:211,1"
      Dst: "[org.locationtech.jts.math.DD].init(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].sqr()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 747
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:748,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfSqr()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:761,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 490
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:491,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].sqr(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].selfMultiply(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:771,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:771,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfMultiply(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 504
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:505,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].sqrt()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isZero()"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].isNegative()"
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].add(double)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:793"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:796"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:795"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:796"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:800"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:799"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:793,1"
      Dst: "[org.locationtech.jts.math.DD].isZero()"
    - Src: "org.locationtech.jts.math.DD:794,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:796,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    - Src: "org.locationtech.jts.math.DD:800,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.math.DD:804,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.math.DD:804,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:807,1"
      Dst: "[org.locationtech.jts.math.DD].add(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isZero()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:952"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:951"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:952"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:951"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].isNegative()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:961"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].sqr()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 747
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:748,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].negate()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].add(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 329
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:330,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].sqrt(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].sqrt()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:812,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:812,1"
      Dst: "[org.locationtech.jts.math.DD].sqrt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].sqrt()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isZero()"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].isNegative()"
    - "[java.lang.Math].sqrt(double)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].add(double)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:793"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:796"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:795"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:796"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:800"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:799"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:793,1"
      Dst: "[org.locationtech.jts.math.DD].isZero()"
    - Src: "org.locationtech.jts.math.DD:794,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:796,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    - Src: "org.locationtech.jts.math.DD:800,1"
      Dst: "[java.lang.Math].sqrt(double)"
    - Src: "org.locationtech.jts.math.DD:804,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.math.DD:804,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:807,1"
      Dst: "[org.locationtech.jts.math.DD].add(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].pow(int)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].reciprocal()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:824"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:827"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:826"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:831"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:841"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:833"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:846"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:845"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:834"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:837"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:836"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:838"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:833"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:832"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:846"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:848"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:847"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:825,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:827,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:829,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.math.DD:835,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:839,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.math.DD:847,1"
      Dst: "[org.locationtech.jts.math.DD].reciprocal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.math.DD].determinant(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.DD"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:862,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:862,1"
      Dst: "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 875
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:876,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:876,1"
      Dst: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].determinant(org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD,org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 875
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:876,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:876,1"
      Dst: "[org.locationtech.jts.math.DD].selfSubtract(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].min(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].le(org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:892"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:896"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:895"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:892,1"
      Dst: "[org.locationtech.jts.math.DD].le(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].le(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1027"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1026"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1027"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1027"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].max(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].ge(org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:907"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:911"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:910"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:907,1"
      Dst: "[org.locationtech.jts.math.DD].ge(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].ge(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1008"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].doubleValue()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 926
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].intValue()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].isZero()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:952"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:951"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:952"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:951"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isNegative()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:961"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].isPositive()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:972"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:971"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:972"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:972"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].equals(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:990"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:989"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:990"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:989"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].gt(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1000"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:999"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1000"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1000"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].ge(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1008"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1009"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].lt(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1018"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1017"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1018"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1018"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].le(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1027"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1026"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1027"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1027"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1040"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1041"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1040"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1041"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1042"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1041"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1042"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1043"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1042"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1043"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1044"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1043"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.math.DD].dump()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    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(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1066,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.math.DD:1066,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1066,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.math.DD:1066,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].toString()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].magnitude(double)"
    - "[org.locationtech.jts.math.DD].toStandardNotation()"
    - "[org.locationtech.jts.math.DD].toSciNotation()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1079"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1081"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1080"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1079"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1081"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1080"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1078,1"
      Dst: "[org.locationtech.jts.math.DD].magnitude(double)"
    - Src: "org.locationtech.jts.math.DD:1080,1"
      Dst: "[org.locationtech.jts.math.DD].toStandardNotation()"
    - Src: "org.locationtech.jts.math.DD:1081,1"
      Dst: "[org.locationtech.jts.math.DD].toSciNotation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.math.DD].magnitude(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1306"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1305"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1294,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.math.DD:1295,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.math.DD:1296,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.math.DD:1302,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].toStandardNotation()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.math.DD].stringOfChar(char,int)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jts.math.DD].isNegative()"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1092"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1095"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1094"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1091,1"
      Dst: "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - Src: "org.locationtech.jts.math.DD:1096,1"
      Dst: "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - Src: "org.locationtech.jts.math.DD:1101,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.math.DD:1102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.math.DD:1102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.math.DD:1105,1"
      Dst: "[org.locationtech.jts.math.DD].stringOfChar(char,int)"
    - Src: "org.locationtech.jts.math.DD:1107,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jts.math.DD:1110,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.math.DD:1115,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isZero()"
    - "[org.locationtech.jts.math.DD].isNaN()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1277,1"
      Dst: "[org.locationtech.jts.math.DD].isZero()"
    - Src: "org.locationtech.jts.math.DD:1278,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isZero()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:952"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:951"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:952"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:951"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].isNaN()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 979
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:980,1"
      Dst: "[java.lang.Double].isNaN(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "boolean"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].abs()"
    - "[org.locationtech.jts.math.DD].magnitude(double)"
    - "[org.locationtech.jts.math.DD].pow(int)"
    - "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].gt(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].lt(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(char)"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    - "[java.lang.Math].abs(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1247"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1184"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1169,1"
      Dst: "[org.locationtech.jts.math.DD].abs()"
    - Src: "org.locationtech.jts.math.DD:1171,1"
      Dst: "[org.locationtech.jts.math.DD].magnitude(double)"
    - Src: "org.locationtech.jts.math.DD:1172,1"
      Dst: "[org.locationtech.jts.math.DD].pow(int)"
    - Src: "org.locationtech.jts.math.DD:1173,1"
      Dst: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1176,1"
      Dst: "[org.locationtech.jts.math.DD].gt(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1180,1"
      Dst: "[org.locationtech.jts.math.DD].lt(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1181,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1186,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.math.DD:1190,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.math.DD:1224,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:1224,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1227,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1242,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.math.DD:1248,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 25
  - functionName: "[org.locationtech.jts.math.DD].abs()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].isNegative()"
    - "[org.locationtech.jts.math.DD].negate()"
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:735"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:736"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:735"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:736"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:738"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:737"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:735,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:736,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    - Src: "org.locationtech.jts.math.DD:737,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    - Src: "org.locationtech.jts.math.DD:738,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].pow(int)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    - "[java.lang.Math].abs(int)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].sqr()"
    - "[org.locationtech.jts.math.DD].reciprocal()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:824"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:827"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:826"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:831"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:841"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:833"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:846"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:845"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:834"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:837"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:836"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:838"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:833"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:832"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:846"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:848"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:847"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:825,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:827,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:829,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.math.DD:835,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:839,1"
      Dst: "[org.locationtech.jts.math.DD].sqr()"
    - Src: "org.locationtech.jts.math.DD:847,1"
      Dst: "[org.locationtech.jts.math.DD].reciprocal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 12
  - functionName: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 530
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double,double)"
    functionUses: 2
    ICount: 42
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:539,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].gt(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1000"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:999"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1000"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1000"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].lt(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1018"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1017"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1018"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1018"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 463
    functionDepth: 3
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].createNaN()"
    - "[org.locationtech.jts.math.DD].isNaN()"
    - "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    functionUses: 9
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:464"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:465"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
      - BranchSide: "org.locationtech.jts.math.DD:464"
        BranchSideFuncs:
        - "selfMultiply(org.locationtech.jts.math.DD)"
        - "copy(org.locationtech.jts.math.DD)"
    Callsites:
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    - Src: "org.locationtech.jts.math.DD:464,1"
      Dst: "[org.locationtech.jts.math.DD].createNaN()"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].copy(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:465,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].valueOf(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 157
    functionDepth: 2
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].<init>(double)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:158,1"
      Dst: "[org.locationtech.jts.math.DD].<init>(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 399
    functionDepth: 4
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].negate()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    - Src: "org.locationtech.jts.math.DD:400,1"
      Dst: "[org.locationtech.jts.math.DD].add(org.locationtech.jts.math.DD)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: 343
    functionDepth: 1
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.math.DD"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:344,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.math.DD].stringOfChar(char,int)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1261,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.math.DD:1263,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.math.DD:1265,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.math.DD].isNegative()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:961"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:962"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.math.DD].toSciNotation()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isZero()"
    - "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[org.locationtech.jts.math.DD].isNegative()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1128,1"
      Dst: "[org.locationtech.jts.math.DD].isZero()"
    - Src: "org.locationtech.jts.math.DD:1131,1"
      Dst: "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - Src: "org.locationtech.jts.math.DD:1136,1"
      Dst: "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.math.DD:1141,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.math.DD:1142,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1147,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.math.DD:1148,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.math.DD:1149,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.math.DD:1151,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.locationtech.jts.math.DD].toStandardNotation()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.math.DD].stringOfChar(char,int)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[org.locationtech.jts.math.DD].isNegative()"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1092"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1095"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1094"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1104"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1103"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1104"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1106"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1107"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1117"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1116"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1091,1"
      Dst: "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - Src: "org.locationtech.jts.math.DD:1096,1"
      Dst: "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - Src: "org.locationtech.jts.math.DD:1101,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.math.DD:1102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.math.DD:1102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.math.DD:1105,1"
      Dst: "[org.locationtech.jts.math.DD].stringOfChar(char,int)"
    - Src: "org.locationtech.jts.math.DD:1107,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "org.locationtech.jts.math.DD:1110,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.math.DD:1115,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.math.DD].toSciNotation()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isZero()"
    - "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[org.locationtech.jts.math.DD].isNegative()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1132"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1135"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1134"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1141"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1146"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1145"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1153"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1152"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1128,1"
      Dst: "[org.locationtech.jts.math.DD].isZero()"
    - Src: "org.locationtech.jts.math.DD:1131,1"
      Dst: "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    - Src: "org.locationtech.jts.math.DD:1136,1"
      Dst: "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.math.DD:1137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.math.DD:1141,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.math.DD:1142,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1147,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.math.DD:1148,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.math.DD:1149,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.math.DD:1151,1"
      Dst: "[org.locationtech.jts.math.DD].isNegative()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 11
  - functionName: "[org.locationtech.jts.math.DD].extractSignificantDigits(boolean,int[])"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "boolean"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].abs()"
    - "[org.locationtech.jts.math.DD].magnitude(double)"
    - "[org.locationtech.jts.math.DD].pow(int)"
    - "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].gt(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].lt(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(char)"
    - "[org.locationtech.jts.math.DD].valueOf(double)"
    - "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    - "[java.lang.Math].abs(int)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1176"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1247"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1246"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1191"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1207"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1208"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1212"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1211"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1220"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1242"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1244"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1243"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1244"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1185"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1184"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1169,1"
      Dst: "[org.locationtech.jts.math.DD].abs()"
    - Src: "org.locationtech.jts.math.DD:1171,1"
      Dst: "[org.locationtech.jts.math.DD].magnitude(double)"
    - Src: "org.locationtech.jts.math.DD:1172,1"
      Dst: "[org.locationtech.jts.math.DD].pow(int)"
    - Src: "org.locationtech.jts.math.DD:1173,1"
      Dst: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1176,1"
      Dst: "[org.locationtech.jts.math.DD].gt(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1180,1"
      Dst: "[org.locationtech.jts.math.DD].lt(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1181,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1186,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.math.DD:1190,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.math.DD:1224,1"
      Dst: "[org.locationtech.jts.math.DD].valueOf(double)"
    - Src: "org.locationtech.jts.math.DD:1224,1"
      Dst: "[org.locationtech.jts.math.DD].subtract(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1227,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1242,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "org.locationtech.jts.math.DD:1248,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 25
  - functionName: "[org.locationtech.jts.math.DD].stringOfChar(char,int)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.lang.StringBuffer].append(char)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1262"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1264"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1261,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.locationtech.jts.math.DD:1263,1"
      Dst: "[java.lang.StringBuffer].append(char)"
    - Src: "org.locationtech.jts.math.DD:1265,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.math.DD].getSpecialNumberString()"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.math.DD].isZero()"
    - "[org.locationtech.jts.math.DD].isNaN()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1277"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1277"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1278"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1279"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1278"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1277,1"
      Dst: "[org.locationtech.jts.math.DD].isZero()"
    - Src: "org.locationtech.jts.math.DD:1278,1"
      Dst: "[org.locationtech.jts.math.DD].isNaN()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.math.DD].magnitude(double)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].abs(double)"
    - "[java.lang.Math].log(double)"
    - "[java.lang.Math].floor(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1303"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1306"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1305"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1294,1"
      Dst: "[java.lang.Math].abs(double)"
    - Src: "org.locationtech.jts.math.DD:1295,1"
      Dst: "[java.lang.Math].log(double)"
    - Src: "org.locationtech.jts.math.DD:1296,1"
      Dst: "[java.lang.Math].floor(double)"
    - Src: "org.locationtech.jts.math.DD:1302,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.math.DD].parse(java.lang.String)"
    functionSourceFile: "org.locationtech.jts.math.DD"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.math.DD"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[org.locationtech.jts.math.DD].<init>()"
    - "[java.lang.Character].isDigit(char)"
    - "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].selfAdd(double)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jts.math.DD].pow(int)"
    - "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - "[org.locationtech.jts.math.DD].negate()"
    functionUses: 0
    ICount: 96
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.math.DD:1334"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1338"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1337"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1339"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1342"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1341"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1341"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1343"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1349"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1348"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1358"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1357"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1360"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1368"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1373"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1373"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1384"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1383"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1393"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1395"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1398"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1397"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1398"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1402"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1401"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1402"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1407"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1406"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.math.DD:1407"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.math.DD:1410"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.math.DD:1409"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.math.DD:1331,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.math.DD:1334,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.locationtech.jts.math.DD:1334,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "org.locationtech.jts.math.DD:1349,1"
      Dst: "[org.locationtech.jts.math.DD].<init>()"
    - Src: "org.locationtech.jts.math.DD:1360,1"
      Dst: "[java.lang.Character].isDigit(char)"
    - Src: "org.locationtech.jts.math.DD:1362,1"
      Dst: "[org.locationtech.jts.math.DD].selfMultiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1364,1"
      Dst: "[org.locationtech.jts.math.DD].selfAdd(double)"
    - Src: "org.locationtech.jts.math.DD:1374,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.math.DD:1377,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.math.DD:1380,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.math.DD:1384,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "org.locationtech.jts.math.DD:1384,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.math.DD:1399,1"
      Dst: "[org.locationtech.jts.math.DD].pow(int)"
    - Src: "org.locationtech.jts.math.DD:1400,1"
      Dst: "[org.locationtech.jts.math.DD].divide(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1404,1"
      Dst: "[org.locationtech.jts.math.DD].multiply(org.locationtech.jts.math.DD)"
    - Src: "org.locationtech.jts.math.DD:1408,1"
      Dst: "[org.locationtech.jts.math.DD].negate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 13
    BBCount: 31
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 52
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "int"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:67,1"
      Dst: "[org.locationtech.jts.operation.distance.GeometryLocation].<init>(org.locationtech.jts.geom.Geometry,int,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].getGeometryComponent()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].getSegmentIndex()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].isInsideArea()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.distance.GeometryLocation:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.distance.GeometryLocation:90"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.distance.GeometryLocation].toString()"
    functionSourceFile: "org.locationtech.jts.operation.distance.GeometryLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:94,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryType()"
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:94,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:96,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.distance.GeometryLocation:96,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toPoint(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:68,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.awt.Frame"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[javax.swing.JPanel].<init>()"
    - "[java.awt.BorderLayout].<init>()"
    - "[javax.swing.JScrollPane].<init>()"
    - "[javax.swing.JTextArea].<init>()"
    - "[javax.swing.JButton].<init>()"
    - "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - "[javax.swing.ButtonGroup].<init>()"
    - "[javax.swing.JRadioButton].<init>()"
    - "[javax.swing.JCheckBox].<init>()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].jbInit()"
    - "[java.awt.Window].pack()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 0
    ICount: 87
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:71,1"
      Dst: "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:42,1"
      Dst: "[javax.swing.JPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:43,1"
      Dst: "[java.awt.BorderLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:44,1"
      Dst: "[javax.swing.JScrollPane].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:45,1"
      Dst: "[javax.swing.JTextArea].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:50,1"
      Dst: "[javax.swing.JButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:55,1"
      Dst: "[javax.swing.BoxLayout].<init>(java.awt.Container,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:56,1"
      Dst: "[javax.swing.ButtonGroup].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:58,1"
      Dst: "[javax.swing.JRadioButton].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:68,1"
      Dst: "[javax.swing.JCheckBox].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:73,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:74,1"
      Dst: "[java.awt.Window].pack()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:76,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:81,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JTextArea].setLineWrap(boolean)"
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.AbstractButton].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$1].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$2].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$5].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$7].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$9].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - "[javax.swing.JDialog].getContentPane()"
    - "[java.awt.Container].add(java.awt.Component)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - "[javax.swing.JScrollPane].getViewport()"
    - "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    functionUses: 0
    ICount: 178
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:85,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:86,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:86,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:87,1"
      Dst: "[javax.swing.JTextArea].setLineWrap(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:89,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:90,1"
      Dst: "[javax.swing.AbstractButton].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:91,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$1].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:91,1"
      Dst: "[javax.swing.AbstractButton].addActionListener(java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:97,1"
      Dst: "[javax.swing.JComponent].setToolTipText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:99,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$2].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$3].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:115,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$4].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$5].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:131,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$6].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:140,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$7].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:147,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$8].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:154,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$9].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:160,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog$10].<init>(org.locationtech.jtstest.testbuilder.TestCaseTextDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:165,1"
      Dst: "[javax.swing.JDialog].getContentPane()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:165,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:166,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:180,1"
      Dst: "[javax.swing.JScrollPane].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:188,1"
      Dst: "[javax.swing.ButtonGroup].add(javax.swing.AbstractButton)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.AbstractButton].setEnabled(boolean)"
    - "[javax.swing.AbstractButton].doClick()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:202,1"
      Dst: "[javax.swing.AbstractButton].setEnabled(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:203,1"
      Dst: "[javax.swing.AbstractButton].doClick()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].btnOk_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:207,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].btnSelect_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].selectAll()"
    - "[javax.swing.text.JTextComponent].copy()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:211,1"
      Dst: "[javax.swing.text.JTextComponent].selectAll()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:212,1"
      Dst: "[javax.swing.text.JTextComponent].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbTestCaseJava_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:216,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.JavaTestWriter].write(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:216,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXML_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:220,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:220,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbXMLWKB_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:224,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.XMLTestWriter].getTestXML(org.locationtech.jtstest.test.Testable,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:224,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbSVG_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeTestSVG(org.locationtech.jtstest.test.Testable)"
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:228,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeTestSVG(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:228,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].writeTestSVG(org.locationtech.jtstest.test.Testable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 14
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jtstest.test.Testable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:27,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.SVGTestWriter:28,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.SVGTestWriter].write(org.locationtech.jtstest.test.Testable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbWKB_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKBHex(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:233,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:233,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKBHex(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:235,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:232,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKBHex(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.IOUtil"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.WKBWriter].<init>()"
    - "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.IOUtil:23"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:24"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.IOUtil:23"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:24,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:24,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].write(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.IOUtil:24,1"
      Dst: "[org.locationtech.jts.io.WKBWriter].toHex(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:265,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbWKT_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].toString()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:241"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:240"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:242"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:242"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:241"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:243"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:241,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:241,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:243,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:240,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:265,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbWKTFormatted_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKT(org.locationtech.jts.geom.Geometry,boolean)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:249,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:249,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toWKT(org.locationtech.jts.geom.Geometry,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:251,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:248,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].rbGML_actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.IOUtil].toGML(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:257,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:257,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.IOUtil].toGML(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getResult()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:256,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeView(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:265,1"
      Dst: "[javax.swing.text.JTextComponent].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:266,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.TestCaseTextDialog].writeViewGeometry(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.swing.JTextArea].append(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:272"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:273,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.TestCaseTextDialog:274,1"
      Dst: "[javax.swing.JTextArea].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].<init>(org.locationtech.jts.geom.Coordinate[],int,int,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 89
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:90,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].setId(int)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 103
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].setOverlapDistance(double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getId()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 120
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 4
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:137,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEnvelope(double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 148
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    functionUses: 5
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:159"
        BranchSideFuncs:
        - "expandBy(double)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:155,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:157,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandBy(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getStartIndex()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getEndIndex()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getLineSegment(int,org.locationtech.jts.geom.LineSegment)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 185
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "org.locationtech.jts.geom.LineSegment"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:199"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].select(org.locationtech.jts.geom.Envelope,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 219
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:220,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 227
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    - "int"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChainSelectAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.operation.buffer.OffsetCurve$MatchCurveSegmentAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    functionUses: 3
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:238"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:243"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:242"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:247"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:253"
        BranchSideFuncs:
        - "computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:235,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:239,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:248,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeSelect(org.locationtech.jts.geom.Envelope,int,int,org.locationtech.jts.index.chain.MonotoneChainSelectAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 9
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:272,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "int"
    - "double"
    - "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionUses: 5
    ICount: 32
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:316"
        BranchSideFuncs:
        - "overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:315"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:316"
        BranchSideFuncs:
        - "overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:315"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:331"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:330"
        BranchSideFuncs:
        - "computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:329"
        BranchSideFuncs:
        - "computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:312,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:316,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:325,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 16
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(org.locationtech.jts.index.chain.MonotoneChain,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 285
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "double"
    - "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:286,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 310
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "int"
    - "double"
    - "org.locationtech.jts.index.chain.MonotoneChainOverlapAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexNoder$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector$SegmentOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    functionUses: 5
    ICount: 32
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:316"
        BranchSideFuncs:
        - "overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:315"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:311"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:316"
        BranchSideFuncs:
        - "overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:315"
        BranchSideFuncs:
        - "overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:316"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:318"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:324"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:328"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:325"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:326"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:327"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:328"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:332"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:331"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:329"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:330"
        BranchSideFuncs:
        - "computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:329"
        BranchSideFuncs:
        - "computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:330"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:312,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainOverlapAction].overlap(org.locationtech.jts.index.chain.MonotoneChain,int,org.locationtech.jts.index.chain.MonotoneChain,int)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:316,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:325,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].computeOverlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double,org.locationtech.jts.index.chain.MonotoneChainOverlapAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 16
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(int,int,org.locationtech.jts.index.chain.MonotoneChain,int,int,double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 355
    functionDepth: 1
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 30
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:356"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:359"
        BranchSideFuncs:
        - "overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:358"
        BranchSideFuncs:
        - "intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:357,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:359,1"
      Dst: "[org.locationtech.jts.geom.Envelope].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].overlaps(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,double)"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 363
    functionDepth: 0
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(double,double)"
    - "[java.lang.Math].max(double,double)"
    functionUses: 1
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:369"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:371"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:370"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:371"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:374"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:373"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:379"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:381"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:380"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.chain.MonotoneChain:381"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:383"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.chain.MonotoneChain:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:364,1"
      Dst: "[java.lang.Math].min(double,double)"
    - Src: "org.locationtech.jts.index.chain.MonotoneChain:365,1"
      Dst: "[java.lang.Math].max(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 9
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].<init>(org.locationtech.jts.noding.Noder)"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.noding.Noder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ValidatingNoder:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].computeNodes(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 12
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.ScaledNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.BoundaryChainNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snap.SnappingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SimpleNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.BoundarySegmentNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.IteratedNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.ValidatingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.SegmentExtractingNoder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.MCIndexNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.SimpleNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ScaledNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.MCIndexSnapRounder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.snapround.SnapRoundingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.BoundaryChainNoder:org.locationtech.jts.noding.BoundarySegmentNoder:org.locationtech.jts.noding.IteratedNoder:org.locationtech.jts.noding.SegmentExtractingNoder:org.locationtech.jts.noding.ValidatingNoder:org.locationtech.jts.noding.snap.SnappingNoder].getNodedSubstrings()"
    - "[org.locationtech.jts.noding.ValidatingNoder].validate()"
    - "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    functionUses: 4
    ICount: 9
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ValidatingNoder:54,1"
      Dst: "[org.locationtech.jts.noding.Noder].computeNodes(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.ValidatingNoder:55,1"
      Dst: "[org.locationtech.jts.noding.Noder].getNodedSubstrings()"
    - Src: "org.locationtech.jts.noding.ValidatingNoder:56,1"
      Dst: "[org.locationtech.jts.noding.ValidatingNoder].validate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].validate()"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ValidatingNoder:60,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.ValidatingNoder:61,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:66,1"
      Dst: "[org.locationtech.jts.algorithm.RobustLineIntersector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    functionSourceFile: "org.locationtech.jts.noding.FastNodingValidator"
    linkageType: null
    functionLinenumber: 136
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.FastNodingValidator].getErrorMessage()"
    - "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersection()"
    functionUses: 3
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.FastNodingValidator:138"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:140"
        BranchSideFuncs:
        - "getIntersection()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
        - "getErrorMessage()"
      - BranchSide: "org.locationtech.jts.noding.FastNodingValidator:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastNodingValidator:137,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].execute()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].getErrorMessage()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.noding.NodingIntersectionFinder].getIntersection()"
    - Src: "org.locationtech.jts.noding.FastNodingValidator:139,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].validate()"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.ValidatingNoder:60,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.noding.ValidatingNoder:61,1"
      Dst: "[org.locationtech.jts.noding.FastNodingValidator].checkValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.ValidatingNoder].getNodedSubstrings()"
    functionSourceFile: "org.locationtech.jts.noding.ValidatingNoder"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "java.util.Collection"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].<init>(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.awt.geom.Point2D$Double].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:45,1"
      Dst: "[java.awt.geom.Point2D$Double].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:51,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getColor()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.awt.Color"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setColor(java.awt.Color)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Color"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSize(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:65,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].getSymbol()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].setSymbol(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:72,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Rectangle].<init>(int,int,int,int)"
    - "[java.awt.BasicStroke].<init>(float)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:78"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:79"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:76,1"
      Dst: "[java.awt.Rectangle].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:79,1"
      Dst: "[java.awt.BasicStroke].<init>(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.style.VertexStyle].paint(org.locationtech.jts.geom.Geometry,org.locationtech.jtstest.testbuilder.ui.Viewport,java.awt.Graphics2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jtstest.testbuilder.ui.Viewport"
    - "java.awt.Graphics2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate)"
    - "[java.awt.geom.Point2D].setLocation(double,double)"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - "[java.awt.geom.Point2D].getX()"
    - "[java.awt.geom.Point2D].getY()"
    - "[java.awt.Graphics].fillRect(int,int,int,int)"
    - "[java.awt.Graphics].drawRect(int,int,int,int)"
    - "[java.awt.Graphics].fillOval(int,int,int,int)"
    - "[java.awt.Graphics].drawOval(int,int,int,int)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:89"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:115"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:114"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:90"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:84,1"
      Dst: "[java.awt.Graphics2D].setPaint(java.awt.Paint)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:85,1"
      Dst: "[java.awt.Graphics2D].setStroke(java.awt.Stroke)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:87,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:90,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:94,1"
      Dst: "[java.awt.geom.Point2D].setLocation(double,double)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:98,1"
      Dst: "[java.awt.geom.Point2D].getX()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:99,1"
      Dst: "[java.awt.geom.Point2D].getY()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:102,1"
      Dst: "[java.awt.Graphics].fillRect(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:105,1"
      Dst: "[java.awt.Graphics].drawRect(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:108,1"
      Dst: "[java.awt.Graphics].fillOval(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.style.VertexStyle:111,1"
      Dst: "[java.awt.Graphics].drawOval(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].containsInModel(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:353,1"
      Dst: "[org.locationtech.jts.geom.Envelope].contains(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.Viewport].toView(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.Viewport"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.awt.geom.Point2D"
    argCount: 2
    argTypes:
    - "java.awt.geom.Point2D"
    - "java.awt.geom.Point2D"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].getModelToViewTransform()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.Viewport:230,1"
      Dst: "[java.awt.geom.AffineTransform].transform(java.awt.geom.Point2D,java.awt.geom.Point2D)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].<init>()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:33,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:38,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 49
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:51,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:51,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:52,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].addAll(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 56
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:57"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:60"
        BranchSideFuncs:
        - "next()"
        - "add(org.locationtech.jts.geomgraph.Edge)"
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:57,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:58,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:58,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeList].add(org.locationtech.jts.geomgraph.Edge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].getEdges()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "java.util.List"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].findEqualEdge(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 72
    functionDepth: 4
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:73,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:73,1"
      Dst: "[org.locationtech.jts.noding.OrientedCoordinateArray].<init>(org.locationtech.jts.geom.Coordinate[])"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:75,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].iterator()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: 78
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.ContentList$FilterList].iterator()"
    - "[org.jdom2.ContentList].iterator()"
    - "[org.jdom2.AttributeList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:79,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].get(int)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Edge"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:81,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].findEdgeIndex(org.locationtech.jts.geomgraph.Edge)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.Edge].equals(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:91,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:92,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:92,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geomgraph.Edge].equals(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 213
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    functionUses: 1
    ICount: 42
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.Edge:214"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:215"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:214"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:222"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:231"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:230"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:223"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:226"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:225"
        BranchSideFuncs:
        - "equals2D(org.locationtech.jts.geom.Coordinate)"
    - Branch String: "org.locationtech.jts.geomgraph.Edge:226"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:229"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:228"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:218"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.Edge:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.Edge:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Edge:223,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].equals2D(org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jts.geomgraph.EdgeList].print(java.io.PrintStream)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.PrintStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintStream].print(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.PrintStream].println(java.lang.String)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:111"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:110"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:105"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geomgraph.EdgeList:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geomgraph.EdgeList:106"
      Branch Sides: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeList:99,1"
      Dst: "[java.io.PrintStream].print(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:100,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:101,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:104,1"
      Dst: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:107,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:107,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:107,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:107,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.geomgraph.EdgeList:109,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jts.geomgraph.Edge].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geomgraph.Edge"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.DataConversionException].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.jdom2.DataConversionException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.jdom2.JDOMException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.DataConversionException:79,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.jdom2.DataConversionException:79,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.DataConversionException:79,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.jdom2.DataConversionException:79,1"
      Dst: "[org.jdom2.JDOMException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList"
    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: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList:78,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>(org.locationtech.jtstest.testbuilder.io.HtmlWriter$1)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.io.HtmlWriter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestModel].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestModel"
    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: "org.locationtech.jtstest.testbuilder.model.TestModel:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].<init>(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1:81,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].filter(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1"
    linkageType: null
    functionLinenumber: 84
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1:85,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1:85,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:44,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:45,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(org.locationtech.jts.geom.Geometry,double,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:61,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:62,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLength(org.locationtech.jts.geom.Geometry,org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "double"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLength(org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:75,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:76,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLength(org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLength(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:191,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:192,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:193,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:194,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:195,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:196,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:198,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:198,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:199,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:199,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:200,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:211,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:64,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:119"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:122"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:120,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:147"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:148"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:149"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:151"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:149,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:177,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:190"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getLine()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:188,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:189,1"
      Dst: "[org.locationtech.jts.geom.LineString].getCoordinateN(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 435
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].hypot(double,double)"
    functionUses: 54
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Coordinate:438,1"
      Dst: "[java.lang.Math].hypot(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearLocation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionSourceFile: "org.locationtech.jts.linearref.LinearIterator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LinearIterator:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:138"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LinearIterator:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LinearIterator:130,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:133,1"
      Dst: "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - Src: "org.locationtech.jts.linearref.LinearIterator:135,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].loadCurrentLine()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].<init>(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:97,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocation(double,boolean)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 2
    argTypes:
    - "double"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LengthLocationMap].getLocationForward(double)"
    - "[org.locationtech.jts.linearref.LengthLocationMap].resolveHigher(org.locationtech.jts.linearref.LinearLocation)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:119"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:118"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:123"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:116,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:119,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].getLocationForward(double)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:123,1"
      Dst: "[org.locationtech.jts.linearref.LengthLocationMap].resolveHigher(org.locationtech.jts.linearref.LinearLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLocationForward(double)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    - "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:128"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:131"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:130"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:134"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:167"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:144"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:152"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:151"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:145"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:165"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:164"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:156"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:162"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:129,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:133,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:134,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:144,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:146,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:147,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:148,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:152,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:153,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:154,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:165,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:168,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getEndLocation(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 12
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].resolveHigher(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.linearref.LinearLocation"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearLocation].isEndpoint(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    - "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:175"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:174"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:184"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:183"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:182"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:173,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].isEndpoint(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:175,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:177,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumGeometries()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:182,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getGeometryN(int)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:182,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:184,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].<init>(int,int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.linearref.LengthLocationMap].getLength(org.locationtech.jts.linearref.LinearLocation)"
    functionSourceFile: "org.locationtech.jts.linearref.LengthLocationMap"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "double"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.linearref.LinearLocation"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    - "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - "[org.locationtech.jts.linearref.LinearIterator].next()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:192"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:213"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:212"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:207"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:206"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:198"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:202"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:201"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.linearref.LengthLocationMap:207"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.linearref.LengthLocationMap:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:191,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].<init>(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:192,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].hasNext()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:193,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].isEndOfLine()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:194,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentStart()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:195,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getSegmentEnd()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:196,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].distance(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:198,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:198,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getComponentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:199,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:199,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].getVertexIndex()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:200,1"
      Dst: "[org.locationtech.jts.linearref.LinearLocation].getSegmentFraction()"
    - Src: "org.locationtech.jts.linearref.LengthLocationMap:211,1"
      Dst: "[org.locationtech.jts.linearref.LinearIterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,double)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].<init>(org.locationtech.jtstest.geomfunction.GeometryFunction,int,double)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.geomfunction.GeometryFunction"
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getCategory()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getCategory()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    functionUses: 6
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:42,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getCategory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getName()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getName()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 8
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:46,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:46,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getName()"
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:46,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getDescription()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getDescription()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:50,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getDescription()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getParameterNames()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:54,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterNames()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getParameterTypes()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 0
    returnType: "java.lang.Class[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.SpreaderGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.RepeaterGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.BaseGeometryFunction].getParameterTypes()"
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    functionUses: 4
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:58,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getParameterTypes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getReturnType()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 0
    returnType: "java.lang.Class"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].getSignature()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].getSignature()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:66,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].getSignature()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].isBinary()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:70,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isBinary()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].isRequiredB()"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].isRequiredB()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:74,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].isRequiredB()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].toDouble(java.lang.Object)"
    - "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].isMatch(double)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:81"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:82"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:79,1"
      Dst: "[org.locationtech.jtstest.geomfunction.GeometryFunction].invoke(org.locationtech.jts.geom.Geometry,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:80,1"
      Dst: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].toDouble(java.lang.Object)"
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:81,1"
      Dst: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].isMatch(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].toDouble(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Number].doubleValue()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:88,1"
      Dst: "[java.lang.Number].doubleValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].isMatch(double)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].toDouble(java.lang.Object)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.Number].doubleValue()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:85"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:87"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:89"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:86,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:88,1"
      Dst: "[java.lang.Number].doubleValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jtstest.geomfunction.FilterGeometryFunction].isMatch(double)"
    functionSourceFile: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:92"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:93"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:94"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:96"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:99"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:98"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.geomfunction.FilterGeometryFunction:97"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 31
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.PrecisionModel,int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.PrecisionModel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:37,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>(org.locationtech.jts.geom.PrecisionModel,int)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:37,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:52"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.GeometryCollection:54,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinate()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinate()"
    - "[org.locationtech.jts.geom.Point].getCoordinate()"
    - "[org.locationtech.jts.geom.LineString].getCoordinate()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    functionUses: 9
    ICount: 16
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:65"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:64"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:61"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:60"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:61,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:62,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 77
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - "[org.locationtech.jts.geom.GeometryCollection].getCoordinates()"
    - "[org.locationtech.jts.geom.Point].getCoordinates()"
    - "[org.locationtech.jts.geom.Polygon].getCoordinates()"
    - "[org.locationtech.jts.geom.LineString].getCoordinates()"
    - "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    functionUses: 6
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:87"
        BranchSideFuncs:
        - "getCoordinates()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:82"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:77"
        BranchSideFuncs:
        - "getNumPoints()"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:78,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:81,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getCoordinates()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].isEmpty()"
    - "[org.locationtech.jts.geom.GeometryCollection].isEmpty()"
    - "[org.locationtech.jts.geom.Polygon].isEmpty()"
    - "[org.locationtech.jts.geom.LineString].isEmpty()"
    - "[org.locationtech.jts.geom.Geometry].isEmpty()"
    functionUses: 56
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:91"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:96"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:95"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:92"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:91"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:92,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 99
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.lang.Math].max(int,int)"
    functionUses: 44
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:101"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:102,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:102,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].hasDimension(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].hasDimension(int)"
    - "[org.locationtech.jts.geom.GeometryCollection].hasDimension(int)"
    - "[org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon].hasDimension(int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:108"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:112"
        BranchSideFuncs:
        - "hasDimension(int)"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:111"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:109"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:108"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:109,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasDimension(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getBoundaryDimension()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.LineString].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.LinearRing:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getBoundaryDimension()"
    - "[org.locationtech.jts.geom.Geometry].getBoundaryDimension()"
    - "[java.lang.Math].max(int,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:117"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:118,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getBoundaryDimension()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:118,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Point].getNumPoints()"
    - "[org.locationtech.jts.geom.LineString].getNumPoints()"
    - "[org.locationtech.jts.geom.Polygon].getNumPoints()"
    - "[org.locationtech.jts.geom.GeometryCollection].getNumPoints()"
    - "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:133"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:134,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getNumPoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryType()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 139
    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: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getBoundary()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 143
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].checkNotGeometryCollection(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:144,1"
      Dst: "[org.locationtech.jts.geom.Geometry].checkNotGeometryCollection(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:145,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.util.Assert].shouldNeverReachHere()"
    functionSourceFile: "org.locationtech.jts.util.Assert"
    linkageType: null
    functionLinenumber: 85
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    functionUses: 6
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.util.Assert:86,1"
      Dst: "[org.locationtech.jts.util.Assert].shouldNeverReachHere(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getArea()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 155
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].getArea()"
    - "[org.locationtech.jts.geom.GeometryCollection].getArea()"
    - "[org.locationtech.jts.geom.Geometry].getArea()"
    functionUses: 5
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:157"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:158,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getArea()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getLength()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 164
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getLength()"
    - "[org.locationtech.jts.geom.Polygon].getLength()"
    - "[org.locationtech.jts.geom.LineString].getLength()"
    - "[org.locationtech.jts.geom.Geometry].getLength()"
    functionUses: 3
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:166"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:167,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 172
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.MultiPolygon].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Polygon].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.GeometryCollection].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.MultiPoint].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.MultiLineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.LineString].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Point].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    - "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    functionUses: 5
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:173"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:176"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:175"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:177"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:179"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:180"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:185"
        BranchSideFuncs:
        - "equalsExact(org.locationtech.jts.geom.Geometry,double)"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:184"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:181"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:180"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:173,1"
      Dst: "[org.locationtech.jts.geom.Geometry].isEquivalentClass(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:181,1"
      Dst: "[org.locationtech.jts.geom.Geometry].equalsExact(org.locationtech.jts.geom.Geometry,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 188
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateFilter)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    functionUses: 3
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:189"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:190,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 194
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.CoordinateSequenceFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isDone()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].isDone()"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].isDone()"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].isDone()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isDone()"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].isDone()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].isDone()"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isDone()"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isDone()"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].isDone()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isDone()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isDone()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].isDone()"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].isDone()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$2].isGeometryChanged()"
    - "[org.locationtech.jts.io.WKTWriter$CheckOrdinatesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.util.Debug$SegmentFindingFilter].isGeometryChanged()"
    - "[org.locationtech.jts.io.twkb.BoundsExtractor].isGeometryChanged()"
    - "[org.locationtech.jts.operation.overlayng.ElevationModel$1].isGeometryChanged()"
    - "[org.locationtech.jts.operation.union.OverlapUnion$1].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearVerticesFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.CoverageBoundarySegmentFinder].isGeometryChanged()"
    - "[org.locationtech.jts.precision.SimpleMinimumClearance$ComputeMCCoordinateSequenceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.coverage.VertexRingCounter].isGeometryChanged()"
    - "[org.locationtech.jts.algorithm.distance.DiscreteHausdorffDistance$MaxDensifiedByFractionDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.util.AffineTransformation].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CoordinatePrecisionReducerFilter].isGeometryChanged()"
    - "[org.locationtech.jts.operation.buffer.validate.BufferCurveMaximumDistanceFinder$MaxMidpointDistanceFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.SegmentExtracter$SegmentExtracterFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.VertexLocater$NearestVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.NearestPointFinder$NearestPointFilter].isGeometryChanged()"
    - "[org.locationtech.jts.precision.CommonBitsRemover$Translater].isGeometryChanged()"
    - "[org.locationtech.jtstest.testbuilder.geom.AdjacentVertexFinder$AdjacentVertexFilter].isGeometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].isDone()"
    - "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    functionUses: 6
    ICount: 22
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:197"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:203"
        BranchSideFuncs:
        - "apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
        - "isDone()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:202"
        BranchSideFuncs:
        - "isGeometryChanged()"
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:199"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:197"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:196"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:203"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:205"
        BranchSideFuncs:
        - "geometryChanged()"
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:198,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.CoordinateSequenceFilter)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:199,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].isDone()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:203,1"
      Dst: "[org.locationtech.jts.geom.CoordinateSequenceFilter].isGeometryChanged()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:204,1"
      Dst: "[org.locationtech.jts.geom.Geometry].geometryChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 207
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.util.PolygonExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.ConnectedElementLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LineStringExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.algorithm.InteriorPoint$DimensionNonEmptyFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.OverlayArea$PolygonAreaFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayarea.GeometryArea$PolygonAreaFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$2].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.PointExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.union.InputExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.GeometryExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.SpatialIndexFunctions$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlay.validate.PolygonalLineworkExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.ConnectedElementPointFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.function.GeometryFunctions$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryFilter)"
    - "[org.locationtech.jts.geom.GeometryFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    functionUses: 4
    ICount: 13
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:209"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:208,1"
      Dst: "[org.locationtech.jts.geom.GeometryFilter].filter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:210,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 214
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryComponentFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.OctagonalEnvelope$BoundingOctagonComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineSequencer$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.distance.FacetSequenceTreeBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.linemerge.LineMerger$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryPointLocater$NearestSegmentLocationFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.ComponentCoordinateExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.simplify.TopologyPreservingSimplifier$LineStringMapBuilderFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.util.LinearComponentExtracter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.edgegraph.EdgeGraphBuilder$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.dissolve.LineDissolver$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.operation.overlayng.OverlayPoints$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.geom.GeometryUtil$1].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Point].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.Polygon].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.LineString].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    - "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 5
    ICount: 13
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:216"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:215,1"
      Dst: "[org.locationtech.jts.geom.GeometryComponentFilter].filter(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:217,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].clone()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 228
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:229,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].copyInternal()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 232
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].copy()"
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:234"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:236"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:235,1"
      Dst: "[org.locationtech.jts.geom.Geometry].copy()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:237,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:52"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.GeometryCollection:54,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].normalize()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 240
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].normalize()"
    - "[org.locationtech.jts.geom.Polygon].normalize()"
    - "[org.locationtech.jts.geom.LineString].normalize()"
    - "[org.locationtech.jts.geom.Point].normalize()"
    - "[org.locationtech.jts.geom.Geometry].normalize()"
    - "[java.util.Arrays].sort(java.lang.Object[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:241"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:242,1"
      Dst: "[org.locationtech.jts.geom.Geometry].normalize()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:244,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].computeEnvelopeInternal()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 247
    functionDepth: 3
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>()"
    - "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    - "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:249"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:251"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:248,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:250,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getEnvelopeInternal()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:250,1"
      Dst: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init()"
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:121,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:122,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].expandToInclude(org.locationtech.jts.geom.Envelope)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 470
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Envelope"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].isNull()"
    - "[org.locationtech.jts.geom.Envelope].getMinX()"
    - "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - "[org.locationtech.jts.geom.Envelope].getMinY()"
    - "[org.locationtech.jts.geom.Envelope].getMaxY()"
    functionUses: 6
    ICount: 45
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.Envelope:471"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:474"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:473"
        BranchSideFuncs:
        - "isNull()"
    - Branch String: "org.locationtech.jts.geom.Envelope:474"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:481"
        BranchSideFuncs:
        - "getMaxY()"
        - "getMinY()"
        - "getMaxX()"
        - "getMinX()"
      - BranchSide: "org.locationtech.jts.geom.Envelope:480"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:484"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:483"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:484"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:487"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:486"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:490"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:489"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.Envelope:490"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.Envelope:494"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.Envelope:493"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:471,1"
      Dst: "[org.locationtech.jts.geom.Envelope].isNull()"
    - Src: "org.locationtech.jts.geom.Envelope:475,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinX()"
    - Src: "org.locationtech.jts.geom.Envelope:476,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxX()"
    - Src: "org.locationtech.jts.geom.Envelope:477,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMinY()"
    - Src: "org.locationtech.jts.geom.Envelope:478,1"
      Dst: "[org.locationtech.jts.geom.Envelope].getMaxY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 13
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].compareToSameClass(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.TreeSet].<init>(java.util.Collection)"
    - "[org.locationtech.jts.geom.Geometry].compare(java.util.Collection,java.util.Collection)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:256,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.GeometryCollection:256,1"
      Dst: "[java.util.TreeSet].<init>(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:258,1"
      Dst: "[org.locationtech.jts.geom.Geometry].compare(java.util.Collection,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "org.locationtech.jts.geom.CoordinateSequenceComparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - "[org.locationtech.jts.geom.Geometry].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:267"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:271"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:272"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:271"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:274"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:275"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:274"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:264,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:268,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:270,1"
      Dst: "[org.locationtech.jts.geom.Geometry].compareToSameClass(java.lang.Object,org.locationtech.jts.geom.CoordinateSequenceComparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getNumGeometries()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getGeometryN(int)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].getTypeCode()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 280
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 291
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:292,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].reverseInternal()"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 296
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.GeometryCollection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.LinearRing].reverse()"
    - "[org.locationtech.jts.geom.Point].reverse()"
    - "[org.locationtech.jts.geom.MultiPolygon].reverse()"
    - "[org.locationtech.jts.geom.Geometry].reverse()"
    - "[org.locationtech.jts.geom.MultiLineString].reverse()"
    - "[org.locationtech.jts.geom.MultiPoint].reverse()"
    - "[org.locationtech.jts.geom.LineString].reverse()"
    - "[org.locationtech.jts.geom.GeometryCollection].reverse()"
    - "[org.locationtech.jts.geom.Polygon].reverse()"
    - "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionUses: 1
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:300"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:299,1"
      Dst: "[org.locationtech.jts.geom.Geometry].reverse()"
    - Src: "org.locationtech.jts.geom.GeometryCollection:301,1"
      Dst: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.geom.GeometryCollection].<init>(org.locationtech.jts.geom.Geometry[],org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.GeometryCollection"
    linkageType: null
    functionLinenumber: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry[]"
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:50"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:53"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:52"
        BranchSideFuncs:
        - "hasNullElements(java.lang.Object[])"
    - Branch String: "org.locationtech.jts.geom.GeometryCollection:53"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:56"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.GeometryCollection:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.GeometryCollection:49,1"
      Dst: "[org.locationtech.jts.geom.Geometry].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.geom.GeometryCollection:53,1"
      Dst: "[org.locationtech.jts.geom.Geometry].hasNullElements(java.lang.Object[])"
    - Src: "org.locationtech.jts.geom.GeometryCollection:54,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4:80,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderMenuBar$4:82,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].controller()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].inspectGeometryDialogForCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilder].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:191,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].getGeomIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].model()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:192,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].frame()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:193,1"
      Dst: "[org.locationtech.jtstest.testbuilder.TestBuilderDialogs].inspectGeometry(org.locationtech.jtstest.testbuilder.JTSTestBuilderFrame,int,org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6].<init>(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6:143,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6].actionPerformed(java.awt.event.ActionEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.ActionEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomOneToOne()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar$6:145,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomOneToOne()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].access$000(org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar:30,1"
      Dst: "[org.locationtech.jtstest.testbuilder.JTSTestBuilderToolBar].controller()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].zoomOneToOne()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 12
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController].editPanel()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].getViewport()"
    - Src: "org.locationtech.jtstest.testbuilder.controller.JTSTestBuilderController:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.Viewport].zoomToInitialExtent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter"
    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: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:282,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].getScale()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].filter(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter"
    linkageType: null
    functionLinenumber: 291
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Coordinate].getX()"
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].updateScaleMax(double)"
    - "[org.locationtech.jts.geom.Coordinate].getY()"
    functionUses: 2
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:292,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getX()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:292,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].updateScaleMax(double)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:293,1"
      Dst: "[org.locationtech.jts.geom.Coordinate].getY()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Coordinate].getX()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 152
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].updateScaleMax(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter"
    linkageType: null
    functionLinenumber: 296
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].inherentScale(double)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:297,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].inherentScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].inherentScale(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil"
    linkageType: null
    functionLinenumber: 179
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].numberOfDecimals(double)"
    - "[java.lang.Math].pow(double,double)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:180,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].numberOfDecimals(double)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:181,1"
      Dst: "[java.lang.Math].pow(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].numberOfDecimals(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil"
    linkageType: null
    functionLinenumber: 262
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].indexOf(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PrecisionUtil:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.PrecisionUtil:268"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:263,1"
      Dst: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:264,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:266,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil:267,1"
      Dst: "[java.lang.String].indexOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 5
  - functionName: "[org.locationtech.jts.io.OrdinateFormat].format(double)"
    functionSourceFile: "org.locationtech.jts.io.OrdinateFormat"
    linkageType: null
    functionLinenumber: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].isNaN(double)"
    - "[java.lang.Double].isInfinite(double)"
    - "[java.text.NumberFormat].format(double)"
    functionUses: 3
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:125"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:125"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.OrdinateFormat:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.OrdinateFormat:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.OrdinateFormat:125,1"
      Dst: "[java.lang.Double].isNaN(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:126,1"
      Dst: "[java.lang.Double].isInfinite(double)"
    - Src: "org.locationtech.jts.io.OrdinateFormat:129,1"
      Dst: "[java.text.NumberFormat].format(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 8
  - functionName: "[org.locationtech.jts.geom.Coordinate].getY()"
    functionSourceFile: "org.locationtech.jts.geom.Coordinate"
    linkageType: null
    functionLinenumber: 170
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].updateScaleMax(double)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter"
    linkageType: null
    functionLinenumber: 296
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil].inherentScale(double)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:298"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:297,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil].inherentScale(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].<init>(org.locationtech.jts.operation.overlayng.PrecisionUtil$1)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.PrecisionUtil$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter:282,1"
      Dst: "[org.locationtech.jts.operation.overlayng.PrecisionUtil$InherentScaleFilter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].powerOf2(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 31
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:33"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:32"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:32"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:34"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:33"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:33,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:36,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].exponent(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 40
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:41,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:42,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].truncateToPowerOfTwo(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].zeroLowerBits(int)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getDouble()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:47,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:48,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].zeroLowerBits(int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:49,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:78,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].zeroLowerBits(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getDouble()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:83,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].toBinaryString(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].toString()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:54,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:55,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:78,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].toString()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].toBinaryString(long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(double)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:140,1"
      Dst: "[java.lang.Long].toBinaryString(long)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:144,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:144,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:145,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:146,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:146,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:147,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:101,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].maximumCommonMantissa(double,double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].numCommonMantissaBits(org.locationtech.jts.index.quadtree.DoubleBits)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].zeroLowerBits(int)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getDouble()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:59"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:61"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:65"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:62,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:65,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:67,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].numCommonMantissaBits(org.locationtech.jts.index.quadtree.DoubleBits)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:68,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].zeroLowerBits(int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:69,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:78,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:101,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].numCommonMantissaBits(org.locationtech.jts.index.quadtree.DoubleBits)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.quadtree.DoubleBits"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getBit(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:129,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getBit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getBit(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:112"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].zeroLowerBits(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getDouble()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:83,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].<init>(double)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Double].doubleToLongBits(double)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:78,1"
      Dst: "[java.lang.Double].doubleToLongBits(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getDouble()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:83,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 90
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:101,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].biasedExponent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].zeroLowerBits(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].getBit(int)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:114"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:112"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].numCommonMantissaBits(org.locationtech.jts.index.quadtree.DoubleBits)"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.index.quadtree.DoubleBits"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getBit(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:131"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.index.quadtree.DoubleBits:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:127"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.index.quadtree.DoubleBits:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:129,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getBit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.quadtree.DoubleBits].toString()"
    functionSourceFile: "org.locationtech.jts.index.quadtree.DoubleBits"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].toBinaryString(long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    - "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(double)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:140,1"
      Dst: "[java.lang.Long].toBinaryString(long)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:144,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:144,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:145,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:146,1"
      Dst: "[org.locationtech.jts.index.quadtree.DoubleBits].getExponent()"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:146,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jts.index.quadtree.DoubleBits:147,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].getInstance()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:25"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:27"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:26"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:26,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setClickCountToFinishGesture(int)"
    - "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setDrawBandLines(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:31,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.AbstractDrawTool].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:32,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setClickCountToFinishGesture(int)"
    - Src: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool:33,1"
      Dst: "[org.locationtech.jtstest.testbuilder.ui.tools.LineBandTool].setDrawBandLines(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.ui.tools.PointTool].getGeometryType()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.ui.tools.PointTool"
    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: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkResultAreaMaxRingAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 57
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultMaxLinked()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResultMax(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    functionUses: 1
    ICount: 39
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:80"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:83"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:82"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:92"
      Branch Sides: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:79"
        BranchSideFuncs:
        - "isResultMaxLinked()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:102"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:58,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isInResultArea()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:58,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean,java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:69,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:80,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultMaxLinked()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:85,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:94,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResultMax(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:104,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:104,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 15
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 109
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].attachEdges(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:110,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:112,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].attachEdges(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].attachEdges(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 115
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[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: 30
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:118"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:120"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:119"
        BranchSideFuncs:
        - "getEdgeRingMax()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:120"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:122"
        BranchSideFuncs:
        - "getCoordinate()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:122"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:125"
        BranchSideFuncs:
        - "dest()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:124"
        BranchSideFuncs:
        - "setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
        - "nextResultMax()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:127"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:118"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:119,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:120,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:121,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:122,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:123,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:125,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setEdgeRingMax(org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].buildMinimalRings(org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 131
    functionDepth: 10
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.GeometryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinimalRings()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:141"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:140"
        BranchSideFuncs:
        - "nextResultMax()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:142"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:137"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:136"
        BranchSideFuncs:
        - "getEdgeRing()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:132,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinimalRings()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:134,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:137,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRing()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:138,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdgeRing].<init>(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:139,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:141,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinimalRings()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 146
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:151"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:149"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:148"
        BranchSideFuncs:
        - "nextResultMax()"
        - "linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:149,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:150,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMinRingEdgesAtNode(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 177
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    functionUses: 1
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:183"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:186"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:185"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:190"
        BranchSideFuncs:
        - "selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:189"
        BranchSideFuncs:
        - "linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:193"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:182"
        BranchSideFuncs:
        - "symOE()"
        - "isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:195"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:198"
        BranchSideFuncs:
        - "getCoordinate()"
        - "<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:179,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].oNextOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:183,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:183,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:187,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:190,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:196,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getCoordinate()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:196,1"
      Dst: "[org.locationtech.jts.geom.TopologyException].<init>(java.lang.String,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].isAlreadyLinked(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 209
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211"
        BranchSideFuncs:
        - "isResultLinked()"
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210"
        BranchSideFuncs:
        - "isResultLinked()"
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210"
        BranchSideFuncs:
        - "isResultLinked()"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:210,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:211,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].isResultLinked()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].selectMaxOutEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 216
    functionDepth: 1
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:217"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:220"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:217,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].linkMaxInEdge(org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.OverlayEdge,org.locationtech.jts.operation.overlayng.MaximalEdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: 226
    functionDepth: 2
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.OverlayEdge"
    - "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:229"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:234"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:233"
        BranchSideFuncs:
        - "setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:227,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].symOE()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:229,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].getEdgeRingMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:234,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].setNextResult(org.locationtech.jts.operation.overlayng.OverlayEdge)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].toString()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].getCoordinates()"
    - "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:241,1"
      Dst: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].getCoordinates()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:242,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:246,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:249,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:249,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:256,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:257,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:37,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 100
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    linkageType: null
    functionLinenumber: 244
    functionDepth: 0
    returnType: "org.locationtech.jts.operation.overlayng.OverlayEdge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    functionSourceFile: "org.locationtech.jts.edgegraph.HalfEdge"
    linkageType: null
    functionLinenumber: 107
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 0
    argTypes: []
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionSourceFile: "org.locationtech.jts.geom.CoordinateList"
    linkageType: null
    functionLinenumber: 210
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    functionUses: 19
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.CoordinateList:211,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.io.WKTWriter].toLineString(org.locationtech.jts.geom.Coordinate[])"
    functionSourceFile: "org.locationtech.jts.io.WKTWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.io.WKTWriter:111"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:114"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:113"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:115"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:120"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.io.WKTWriter:119"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.io.WKTWriter:116"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.io.WKTWriter:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.io.WKTWriter:108,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jts.io.WKTWriter:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jts.io.WKTWriter:118,1"
      Dst: "[org.locationtech.jts.io.WKTWriter].format(org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.io.WKTWriter:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 9
  - functionName: "[org.locationtech.jts.operation.overlayng.MaximalEdgeRing].getCoordinates()"
    functionSourceFile: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Coordinate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:250"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:253"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:252"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:254"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:246,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].<init>()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:249,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].orig()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:249,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:250,1"
      Dst: "[org.locationtech.jts.operation.overlayng.OverlayEdge].nextResultMax()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:256,1"
      Dst: "[org.locationtech.jts.edgegraph.HalfEdge].dest()"
    - Src: "org.locationtech.jts.operation.overlayng.MaximalEdgeRing:257,1"
      Dst: "[org.locationtech.jts.geom.CoordinateList].toCoordinateArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.json.simple.ItemList].<init>()"
    functionSourceFile: "org.json.simple.ItemList"
    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: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:22,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.ItemList:19,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].<init>(java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:25,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.ItemList:19,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.json.simple.ItemList:26,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    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.ArrayList].<init>()"
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:29,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.ItemList:19,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.json.simple.ItemList:31,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].<init>(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.json.simple.ItemList:19,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.json.simple.ItemList:35,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].getItems()"
    functionSourceFile: "org.json.simple.ItemList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].getArray()"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].toArray()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:43,1"
      Dst: "[java.util.List].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List,boolean)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - "[java.util.StringTokenizer].hasMoreTokens()"
    - "[java.util.StringTokenizer].nextToken()"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:47"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:48"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:47"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:47"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:49"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:48"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:49"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:56"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:55"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:51"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:54"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:50,1"
      Dst: "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - Src: "org.json.simple.ItemList:51,1"
      Dst: "[java.util.StringTokenizer].hasMoreTokens()"
    - Src: "org.json.simple.ItemList:52,1"
      Dst: "[java.util.StringTokenizer].nextToken()"
    - Src: "org.json.simple.ItemList:52,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:52,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.json.simple.ItemList:56,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String,int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:61"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:63"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:68"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:70"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:69"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:72"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:66"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:67,1"
      Dst: "[java.lang.String].indexOf(java.lang.String,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.json.simple.ItemList:71,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.ItemList:73,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String,int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:61"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:63"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:68"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:70"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:69"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:72"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:66"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:67,1"
      Dst: "[java.lang.String].indexOf(java.lang.String,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.json.simple.ItemList:71,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.ItemList:73,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.json.simple.ItemList].setSP(java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].add(int,java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.util.List].add(int,java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:81"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:83"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:83,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:83,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.ItemList].add(java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:87"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:89"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:89,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:89,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.json.simple.ItemList].addAll(org.json.simple.ItemList)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.json.simple.ItemList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:93,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].addAll(java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:97,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String,int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:61"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:63"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:68"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:70"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:69"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:72"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:66"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:67,1"
      Dst: "[java.lang.String].indexOf(java.lang.String,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.json.simple.ItemList:71,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.ItemList:73,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.json.simple.ItemList].addAll(java.lang.String,java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:101,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(java.lang.String,int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:61"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:61"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:63"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:62"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:68"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:70"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:69"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:72"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:66"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:67,1"
      Dst: "[java.lang.String].indexOf(java.lang.String,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.json.simple.ItemList:71,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.json.simple.ItemList:73,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 8
  - functionName: "[org.json.simple.ItemList].addAll(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:105,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List,boolean)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - "[java.util.StringTokenizer].hasMoreTokens()"
    - "[java.util.StringTokenizer].nextToken()"
    - "[java.lang.String].trim()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:47"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:48"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:47"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:47"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:49"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:48"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:49"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:56"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:55"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:51"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:54"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:50,1"
      Dst: "[java.util.StringTokenizer].<init>(java.lang.String,java.lang.String)"
    - Src: "org.json.simple.ItemList:51,1"
      Dst: "[java.util.StringTokenizer].hasMoreTokens()"
    - Src: "org.json.simple.ItemList:52,1"
      Dst: "[java.util.StringTokenizer].nextToken()"
    - Src: "org.json.simple.ItemList:52,1"
      Dst: "[java.lang.String].trim()"
    - Src: "org.json.simple.ItemList:52,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.json.simple.ItemList:56,1"
      Dst: "[org.json.simple.ItemList].split(java.lang.String,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.json.simple.ItemList].get(int)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:113,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].size()"
    functionSourceFile: "org.json.simple.ItemList"
    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: "org.json.simple.ItemList:117,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].toString()"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.json.simple.ItemList].toString(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:121,1"
      Dst: "[org.json.simple.ItemList].toString(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].toString(java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuffer].append(java.lang.Object)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:127"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:135"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:134"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:128"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:131"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:125,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.ItemList:127,1"
      Dst: "[java.util.List].size()"
    - Src: "org.json.simple.ItemList:129,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.json.simple.ItemList:129,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.Object)"
    - Src: "org.json.simple.ItemList:131,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.ItemList:135,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.json.simple.ItemList].toString(java.lang.String)"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuffer].append(java.lang.Object)"
    - "[java.lang.StringBuffer].append(java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.json.simple.ItemList:127"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:135"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:134"
        BranchSideFuncs: []
    - Branch String: "org.json.simple.ItemList:128"
      Branch Sides:
      - BranchSide: "org.json.simple.ItemList:131"
        BranchSideFuncs: []
      - BranchSide: "org.json.simple.ItemList:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.json.simple.ItemList:125,1"
      Dst: "[java.lang.StringBuffer].<init>()"
    - Src: "org.json.simple.ItemList:127,1"
      Dst: "[java.util.List].size()"
    - Src: "org.json.simple.ItemList:129,1"
      Dst: "[java.util.List].get(int)"
    - Src: "org.json.simple.ItemList:129,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.Object)"
    - Src: "org.json.simple.ItemList:131,1"
      Dst: "[java.lang.StringBuffer].append(java.lang.String)"
    - Src: "org.json.simple.ItemList:135,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.json.simple.ItemList].clear()"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].clear()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:140,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.json.simple.ItemList].reset()"
    functionSourceFile: "org.json.simple.ItemList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.json.simple.ItemList:145,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell:324,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].getEnvelope()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jts.geom.Envelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell:337,1"
      Dst: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.Envelope].<init>(double,double,double,double)"
    functionSourceFile: "org.locationtech.jts.geom.Envelope"
    linkageType: null
    functionLinenumber: 133
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "double"
    - "double"
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.Envelope:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geom.Envelope:135,1"
      Dst: "[org.locationtech.jts.geom.Envelope].init(double,double,double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].getMaxDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].getDistance()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].getHSide()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].getX()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].getY()"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "double"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell:365,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].compareTo(java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell:314,1"
      Dst: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell].compareTo(org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell)"
    functionSourceFile: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.construct.MaximumInscribedCircle$Cell:365,1"
      Dst: "[java.lang.Double].compare(double,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation].<init>()"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation"
    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: "org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation:263,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation].edit(org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.GeometryFactory)"
    functionSourceFile: "org.locationtech.jts.geom.util.GeometryEditor$NoOpGeometryOperation"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.GeometryFactory"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.NotRepresentableException].<init>()"
    functionSourceFile: "org.locationtech.jts.algorithm.NotRepresentableException"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.NotRepresentableException:24,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:95,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].<init>(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:73,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer$LineStringAdder].<init>(org.locationtech.jts.operation.polygonize.Polygonizer)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:77,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:121"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:125"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:122,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:123,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:137,1"
      Dst: "[org.locationtech.jts.geom.Geometry].apply(org.locationtech.jts.geom.GeometryComponentFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: 147
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.Geometry].getFactory()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:150"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:152"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geom.GeometryFactory)"
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:151"
        BranchSideFuncs:
        - "addEdge(org.locationtech.jts.geom.LineString)"
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:148,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getFactory()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:151,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].<init>(org.locationtech.jts.geom.GeometryFactory)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:152,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].addEdge(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].setCheckRingsValid(boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getPolygons()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:174,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:232,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:237,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:238,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:239,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:247,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:254,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:255,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:264,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getGeometry()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    - "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:186"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:187"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:186"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:188"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:192"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:186,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:187,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:189,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].buildGeometry(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].toGeometryArray(java.util.Collection)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:192,1"
      Dst: "[org.locationtech.jts.geom.GeometryFactory].createGeometryCollection(org.locationtech.jts.geom.Geometry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getDangles()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:201,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getCutEdges()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:211,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].getInvalidRingLines()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 17
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:221,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].polygonize()"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 16
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:232"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:231"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:235"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:236"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:245"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:250"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:249"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:232,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:237,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteDangles()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:238,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].deleteCutEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:239,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeGraph].getEdgeRings()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:246,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:247,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:254,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:255,1"
      Dst: "[org.locationtech.jts.operation.polygonize.HoleAssigner].assignHolesToShells(java.util.List,java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:258,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:264,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:267,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findValidRings(java.util.List,java.util.List,java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].computeValid()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:273"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:280"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:279"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:275"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:278"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:277"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:273,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:273,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:273,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:274,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeValid()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:275,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:276,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findShellsAndHoles(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].computeHole()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:286"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:293"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:292"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:288"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:291"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:284,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:286,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:286,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:286,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:287,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].computeHole()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:288,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isHole()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:289,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findDisjointShells(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].findOuterShells(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].updateIncluded()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:301"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:309"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:308"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:302"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:304"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:303"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:305"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:300"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:296,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].findOuterShells(java.util.List)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:301,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:301,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:301,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:302,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncludedSet()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:304,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].updateIncluded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].findOuterShells(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:320"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:327"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:326"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:325"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:322"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:326"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:320,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:320,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:320,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:321,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getOuterHole()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:322,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:323,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setIncluded(boolean)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:324,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractInvalidLines(java.util.List)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].<init>()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].isIncludedInvalid(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getLineString()"
    - "[java.util.List].add(java.lang.Object)"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:351"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:357"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:356"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:352"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:355"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:344,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing$EnvelopeAreaComparator].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:344,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:350,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:351,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:351,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:351,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:352,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].isIncludedInvalid(org.locationtech.jts.operation.polygonize.EdgeRing)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:353,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getLineString()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:353,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:355,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].setProcessed(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 6
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].isIncludedInvalid(org.locationtech.jts.operation.polygonize.EdgeRing)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.operation.polygonize.EdgeRing"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getEdges()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:376"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:386"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:385"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:382"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:376"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:375"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:383"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:385"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:384"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getEdges()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:376,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:377,1"
      Dst: "[org.locationtech.jts.planargraph.DirectedEdge].getSym()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:378,1"
      Dst: "[org.locationtech.jts.operation.polygonize.PolygonizeDirectedEdge].getRing()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:382,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isValid()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:382,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isProcessed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].extractPolygons(java.util.List,boolean)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 9
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - "[org.locationtech.jts.operation.polygonize.EdgeRing].getPolygon()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:391"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:395"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:393"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:392"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.operation.polygonize.Polygonizer:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:395"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.operation.polygonize.Polygonizer:394"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:390,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:391,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:391,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:391,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:392,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].isIncluded()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:393,1"
      Dst: "[org.locationtech.jts.operation.polygonize.EdgeRing].getPolygon()"
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:393,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 7
  - functionName: "[org.locationtech.jts.operation.polygonize.Polygonizer].access$000(org.locationtech.jts.operation.polygonize.Polygonizer,org.locationtech.jts.geom.LineString)"
    functionSourceFile: "org.locationtech.jts.operation.polygonize.Polygonizer"
    linkageType: null
    functionLinenumber: 51
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.operation.polygonize.Polygonizer"
    - "org.locationtech.jts.geom.LineString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.LineString)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.polygonize.Polygonizer:52,1"
      Dst: "[org.locationtech.jts.operation.polygonize.Polygonizer].add(org.locationtech.jts.geom.LineString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerNORMALIZE].<init>(java.util.List,org.jdom2.output.support.FormatStack,boolean)"
    functionSourceFile: "org.jdom2.output.support.WalkerNORMALIZE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "org.jdom2.output.support.FormatStack"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].<init>(java.util.List,org.jdom2.output.support.FormatStack,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:78,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].<init>(java.util.List,org.jdom2.output.support.FormatStack,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceFirst(java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.WalkerNORMALIZE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:82"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:85"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:82,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:83,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:83,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1262"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceLast(java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.WalkerNORMALIZE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:90"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:93"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:92"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:90"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:93"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:89,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:90,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:90,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1261"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1260"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1260"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1263"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1262"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.jdom2.output.support.WalkerNORMALIZE].analyzeMultiText(org.jdom2.output.support.AbstractFormattedWalker$MultiText,int,int)"
    functionSourceFile: "org.jdom2.output.support.WalkerNORMALIZE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker].get(int)"
    - "[org.jdom2.Content].getCType()"
    - "[java.lang.Enum].ordinal()"
    - "[org.jdom2.Content].getValue()"
    - "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - "[java.lang.String].length()"
    - "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceFirst(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendText(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceLast(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendCDATA(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendRaw(org.jdom2.Content)"
    functionUses: 0
    ICount: 83
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:103"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:150"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:149"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:108"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:113"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:112"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:109"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:99"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:98"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:109"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:99"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:98"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:113"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:116"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:115"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:113"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:114"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:113"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:113"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:116"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:115"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:123"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:128"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:127"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:124"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:99"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:98"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:124"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:99"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:98"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:128"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:131"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:130"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:128"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:129"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:128"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:128"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:131"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:130"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:141"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:144"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:143"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:141"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:144"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:104,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].get(int)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:105,1"
      Dst: "[org.jdom2.Content].getCType()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:105,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:107,1"
      Dst: "[org.jdom2.Content].getValue()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:108,1"
      Dst: "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:109,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:113,1"
      Dst: "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceFirst(java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:114,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendText(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:118,1"
      Dst: "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceLast(java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:131,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendCDATA(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:144,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendRaw(org.jdom2.Content)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 18
    BBCount: 27
  - functionName: "[org.jdom2.Verifier].isAllXMLWhitespace(java.lang.String)"
    functionSourceFile: "org.jdom2.Verifier"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.Verifier:1284"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:1289"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.Verifier:1288"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.Verifier:1285"
      Branch Sides:
      - BranchSide: "org.jdom2.Verifier:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.Verifier:1283,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.Verifier:1285,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.Verifier:1285,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 5
  - functionName: "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceFirst(java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.WalkerNORMALIZE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:82"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:85"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:82,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:83,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:83,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendText(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.output.support.AbstractFormattedWalker$Trim"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.Enum].ordinal()"
    - "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - "[org.jdom2.output.Format].compact(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeText(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:187"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:190"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:189"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:208"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:213"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:186,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:191,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:196,1"
      Dst: "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:199,1"
      Dst: "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:202,1"
      Dst: "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:205,1"
      Dst: "[org.jdom2.output.Format].compact(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:209,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeText(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:210,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:210,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:211,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 11
  - functionName: "[org.jdom2.output.support.WalkerNORMALIZE].isSpaceLast(java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.WalkerNORMALIZE"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[org.jdom2.Verifier].isXMLWhitespace(char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:90"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:93"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:92"
        BranchSideFuncs: []
    - Branch String: "org.jdom2.output.support.WalkerNORMALIZE:90"
      Branch Sides:
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:93"
        BranchSideFuncs: []
      - BranchSide: "org.jdom2.output.support.WalkerNORMALIZE:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:89,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:90,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "org.jdom2.output.support.WalkerNORMALIZE:90,1"
      Dst: "[org.jdom2.Verifier].isXMLWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendCDATA(org.jdom2.output.support.AbstractFormattedWalker$Trim,java.lang.String)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jdom2.output.support.AbstractFormattedWalker$Trim"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - "[java.lang.Enum].ordinal()"
    - "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - "[org.jdom2.output.Format].compact(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeCDATA(java.lang.String)"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$800()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:236,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:238,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:243,1"
      Dst: "[org.jdom2.output.Format].trimBoth(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:246,1"
      Dst: "[org.jdom2.output.Format].trimLeft(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:249,1"
      Dst: "[org.jdom2.output.Format].trimRight(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:252,1"
      Dst: "[org.jdom2.output.Format].compact(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:256,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].escapeCDATA(java.lang.String)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:257,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:259,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:259,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:259,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$800()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:260,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:260,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:262,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$402(org.jdom2.output.support.AbstractFormattedWalker,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 7
  - functionName: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].appendRaw(org.jdom2.Content)"
    functionSourceFile: "org.jdom2.output.support.AbstractFormattedWalker$MultiText"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.jdom2.Content"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:282,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].closeText()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:283,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker$MultiText].ensurespace()"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:284,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$200(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:284,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$000(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:285,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$100(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:285,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$008(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:286,1"
      Dst: "[org.jdom2.output.support.AbstractFormattedWalker].access$300(org.jdom2.output.support.AbstractFormattedWalker)"
    - Src: "org.jdom2.output.support.AbstractFormattedWalker$MultiText:286,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].<init>(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:461,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:457,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:466,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:468,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].init(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:473"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:477"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:476"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:473,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:477,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCases()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:482,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:482,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrent(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:486"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:492"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:491"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:487"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:486"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:485"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:486,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:487,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:496,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestable()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:500,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentTestIndex()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].setCurrentTestIndex(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    - "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:508,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:508,1"
      Dst: "[org.locationtech.jts.math.MathUtil].clamp(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getTestList()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getSize()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].size()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:517,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:517,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].prevCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:520"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:522"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:521"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].nextCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:525"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:527"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:526"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:525,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].copyCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:531,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].getCurrentCase()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:531,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:532,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList$CaseFactory].create()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:536,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:540"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:543"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:541,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.test.Testable)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:544,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].add(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].deleteCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.TestCaseList].remove(int)"
    - "[org.locationtech.jtstest.test.TestCaseList].size()"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:551"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:554"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:553"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:554"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:556"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:555"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:550,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].remove(int)"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:551,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].size()"
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:552,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].createNew()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 5
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$100(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.TestCaseList"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].access$200(org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList,org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList"
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList:451,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel$CaseList].addCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].build(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:34,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].<init>(java.util.List)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].add(org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:49"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:45,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:47,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].add(org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].find(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "org.locationtech.jts.triangulate.tri.Tri"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.HashMap].get(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:52,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:53,1"
      Dst: "[java.util.HashMap].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].add(org.locationtech.jts.triangulate.tri.Tri)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].find(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    - "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].addAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:57,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].getCoordinate(int)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:62,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].find(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:66,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:67,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].addAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.triangulate.tri.TriangulationBuilder].addAdjacent(org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.triangulate.tri.Tri,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.triangulate.tri.TriangulationBuilder"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.triangulate.tri.Tri"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.tri.Tri)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:76"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:77,1"
      Dst: "[org.locationtech.jts.triangulate.tri.TriEdge].<init>(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:77,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "org.locationtech.jts.triangulate.tri.TriangulationBuilder:80,1"
      Dst: "[org.locationtech.jts.triangulate.tri.Tri].setAdjacent(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.triangulate.tri.Tri)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - "[javax.swing.JFrame].<init>()"
    - "[java.awt.Component].setSize(int,int)"
    - "[javax.swing.BorderFactory].createEmptyBorder()"
    - "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - "[javax.swing.JFrame].getContentPane()"
    - "[java.awt.Container].add(java.awt.Component)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:58,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:59,1"
      Dst: "[javax.swing.JFrame].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:64,1"
      Dst: "[java.awt.Component].setSize(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:66,1"
      Dst: "[javax.swing.BorderFactory].createEmptyBorder()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:66,1"
      Dst: "[javax.swing.JComponent].setBorder(javax.swing.border.Border)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:67,1"
      Dst: "[javax.swing.JFrame].getContentPane()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:67,1"
      Dst: "[java.awt.Container].add(java.awt.Component)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].setShowingABwithSpatialFunction(boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].setBusyDialog(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].write(java.io.File,org.locationtech.jtstest.test.TestCaseList,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 24
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "org.locationtech.jtstest.test.TestCaseList"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].setDescription(java.lang.String)"
    - "[java.io.File].isDirectory()"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runMapAndRuns(org.locationtech.jtstest.test.TestCaseList)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].indexHtml(java.util.List,java.util.Map,org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createHtmlFile(java.lang.String,java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testTopHtml()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].size()"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].html(org.locationtech.jtstest.test.Testable,int,int)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:84"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:87"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:86"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:110"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:109"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:100"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:109"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:108"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:103"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:107"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:85,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].setDescription(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:87,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:87,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:89,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runMapAndRuns(org.locationtech.jtstest.test.TestCaseList)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].indexHtml(java.util.List,java.util.Map,org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:92,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createHtmlFile(java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:93,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testTopHtml()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:95,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:95,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:96,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:98,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:104,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:104,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:104,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:105,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:105,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:107,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].html(org.locationtech.jtstest.test.Testable,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].html(org.locationtech.jtstest.test.Testable,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForAB(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForTests(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:114,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:114,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:117,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:117,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:123,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForAB(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:124,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForTests(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].deleteLastTag(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].lastIndexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:130,1"
      Dst: "[java.lang.String].lastIndexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:133,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].deleteFirstTag(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].lastIndexOf(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:137"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:140"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:137,1"
      Dst: "[java.lang.String].lastIndexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:140,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:140,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForTests(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForBinaryPredicates(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:144,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForBinaryPredicates(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForSpatialFunctionTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 23
    returnType: "java.lang.String"
    argCount: 6
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jts.geom.Geometry].toText()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int)"
    - "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 78
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:158"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:157"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:158"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:161"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:152,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:154,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:154,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:154,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:154,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:162,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toText()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:162,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:164,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:169,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:169,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:171,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:237"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:229,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:245,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:246,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:249,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[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: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit:96,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getGeometry(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getPath()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - "[java.awt.Image].getGraphics()"
    - "[javax.swing.JComponent].paint(java.awt.Graphics)"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:360,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:362,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:364,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:370,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:371,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:371,1"
      Dst: "[javax.swing.JComponent].paint(java.awt.Graphics)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForRelateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].insertParagraphs(java.lang.String)"
    - "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jts.geom.Geometry].relate(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jts.geom.IntersectionMatrix].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:184,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].insertParagraphs(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:187,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:187,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:189,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:191,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:191,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:191,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].insertParagraphs(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].<init>(java.lang.String)"
    - "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - "[java.lang.StringBuffer].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:200,1"
      Dst: "[java.lang.StringBuffer].<init>(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:201,1"
      Dst: "[java.lang.StringBuffer].insert(int,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:203,1"
      Dst: "[java.lang.StringBuffer].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForPredicateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 5
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    - "[java.lang.Object].toString()"
    - "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:210,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:210,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:213,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].getStackTrace(java.lang.Throwable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:213,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].replace(java.lang.String,java.lang.String,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:215,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:217,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:217,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:217,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].actualResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.reflect.InvocationTargetException].getTargetException()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:230"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:227"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:233"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:237"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:239"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:238"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:228,1"
      Dst: "[org.locationtech.jts.util.Assert].isTrue(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:229,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:230,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:245,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:246,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:249,1"
      Dst: "[java.lang.reflect.InvocationTargetException].getTargetException()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 15
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].expectedPredicateResult(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "org.locationtech.jtstest.testrunner.BooleanResult"
    argCount: 4
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    - "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:255"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:258"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:257"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:260"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:270"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:269"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:262"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:263"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:264"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:266"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:265"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:265"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:267"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:266"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:268"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:266"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:269"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:255,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:259,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:260,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTests()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:260,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:260,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:261,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:262,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getOperation()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:262,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:263,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getGeometryIndex()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:264,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgumentCount()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:265,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getArgument(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:267,1"
      Dst: "[org.locationtech.jtstest.testrunner.Test].getExpectedResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 8
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.test.Testable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testrunner.TestCase"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForAB(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[org.locationtech.jts.geom.Geometry].toText()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:274"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:273"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:280"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:276,1"
      Dst: "[org.locationtech.jts.geom.Geometry].toText()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:280,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:282,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:285,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:288,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 7
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageTextTable(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:294,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:294,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[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: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlImageHtmlTextTable(java.lang.String,java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[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: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.test.Testable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.test.Testable].getName()"
    - "[java.lang.String].length()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getDescription()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:308"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:307"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:312"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:313"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:317"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:308,1"
      Dst: "[org.locationtech.jtstest.test.Testable].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:309,1"
      Dst: "[java.lang.String].length()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:310,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getDescription()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:314,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 6
    BBCount: 9
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runName(java.lang.String,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    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].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:323,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlTitle(org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[org.locationtech.jts.geom.PrecisionModel].getScale()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:327,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 22
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:336,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createGifFile(java.lang.String,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,org.locationtech.jts.geom.Geometry,boolean,int,int,boolean)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 21
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "org.locationtech.jts.geom.Geometry"
    - "boolean"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[])"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    - "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getPath()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - "[java.awt.Image].getGraphics()"
    - "[javax.swing.JComponent].paint(java.awt.Graphics)"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:363"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:365"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:358,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:359,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].<init>(org.locationtech.jts.geom.Geometry[])"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:360,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].setResult(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestBuilderModel].getGeometryEditModel()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:361,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.GeometryEditModel].setTestCase(org.locationtech.jtstest.testbuilder.model.TestCaseEdit)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:362,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setModel(org.locationtech.jtstest.testbuilder.model.TestBuilderModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:364,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].zoomToFullExtent()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:366,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingResult(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:367,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryA(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:368,1"
      Dst: "[org.locationtech.jtstest.testbuilder.GeometryEditPanel].setShowingGeometryB(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:369,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:370,1"
      Dst: "[java.awt.image.BufferedImage].<init>(int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:371,1"
      Dst: "[java.awt.Image].getGraphics()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:371,1"
      Dst: "[javax.swing.JComponent].paint(java.awt.Graphics)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 7
    BBCount: 14
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].createHtmlFile(java.lang.String,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.File].getPath()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.io.File].getPath()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:385,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:386,1"
      Dst: "[org.locationtech.jtstest.util.FileUtil].setContents(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runMapAndRuns(org.locationtech.jtstest.test.TestCaseList)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.test.TestCaseList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - "[org.locationtech.jtstest.testrunner.TestRun].getTestFile()"
    - "[java.io.File].getName()"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].addToListMapAndList(java.lang.String,java.lang.Object,java.util.Map,java.util.List)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>(org.locationtech.jtstest.testbuilder.io.HtmlWriter$1)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:405"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:404"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:395"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:402"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:401"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:398"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:396"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:395"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:390,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:391,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392,1"
      Dst: "[org.locationtech.jtstest.test.TestCaseList].getList()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:392,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:393,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:394,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getTestable()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:396,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestRunnerTestCaseAdapter].getTestRunnerTestCase()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:397,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestCase].getTestRun()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:397,1"
      Dst: "[org.locationtech.jtstest.testrunner.TestRun].getTestFile()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:397,1"
      Dst: "[java.io.File].getName()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:398,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:398,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:399,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].addToListMapAndList(java.lang.String,java.lang.Object,java.util.Map,java.util.List)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:405,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter$MapAndList].<init>(org.locationtech.jtstest.testbuilder.io.HtmlWriter$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 10
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].addToListMapAndList(java.lang.String,java.lang.Object,java.util.Map,java.util.List)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.util.Map"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:412"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:417"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:412,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:413,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:414,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:417,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:419,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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].indexHtml(java.util.List,java.util.Map,org.locationtech.jts.geom.PrecisionModel)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "java.util.Map"
    - "org.locationtech.jts.geom.PrecisionModel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlTitle(org.locationtech.jts.geom.PrecisionModel)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runName(java.lang.String,int)"
    functionUses: 0
    ICount: 242
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:441"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:457"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:456"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:447"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:454"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:453"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:468"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:475"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:474"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:481"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:488"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:487"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:425,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:425,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:425,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:441,1"
      Dst: "[java.util.List].iterator()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:441,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:442,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:444,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:445,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:451,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testName(org.locationtech.jtstest.test.Testable,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:451,1"
      Dst: "[org.locationtech.jtstest.util.StringUtil].escapeHTML(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:462,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlTitle(org.locationtech.jts.geom.PrecisionModel)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:472,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].runName(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 5
    BBCount: 13
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].testTopHtml()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    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].toString()"
    functionUses: 0
    ICount: 62
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:498,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:498,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:498,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForBinaryPredicates(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.io.HtmlWriter"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.model.TestCaseEdit"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForRelateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForPredicateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 74
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:522"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:538"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:537"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:522,1"
      Dst: "[org.locationtech.jtstest.testbuilder.model.TestCaseEdit].getGeometry(int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForRelateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int)"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:523,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "org.locationtech.jtstest.testbuilder.io.HtmlWriter:524,1"
      Dst: "[org.locationtech.jtstest.testbuilder.io.HtmlWriter].htmlForPredicateTest(org.locationtech.jtstest.testbuilder.model.TestCaseEdit,int,java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].intersects(org.locationtech.jts.geom.prep.PreparedPolygon,org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects"
    linkageType: null
    functionLinenumber: 39
    functionDepth: 10
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:40,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:41,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:51,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTestComponentInTarget(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getIntersectionFinder()"
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTargetComponentInAreaTest(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getRepresentativePoints()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 24
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:79"
        BranchSideFuncs:
        - "extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:95"
        BranchSideFuncs:
        - "getIntersectionFinder()"
        - "intersects(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:94"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:94"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:68,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTestComponentInTarget(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:80,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:83,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:84,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getIntersectionFinder()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:84,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:98,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getRepresentativePoints()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:97,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTargetComponentInAreaTest(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.noding.SegmentStringUtil"
    linkageType: null
    functionLinenumber: 45
    functionDepth: 4
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.SegmentStringUtil:46,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractNodedSegmentStrings(org.locationtech.jts.geom.Geometry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygon].getIntersectionFinder()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygon"
    linkageType: null
    functionLinenumber: 63
    functionDepth: 8
    returnType: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].<init>(java.util.Collection)"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygon:64"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygon:66"
        BranchSideFuncs:
        - "getGeometry()"
        - "extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
        - "<init>(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygon:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:65,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:65,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:65,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 3
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygon].getGeometry()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygon"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 1
    returnType: "org.locationtech.jts.geom.Geometry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:38,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getGeometry()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].<init>(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 38
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:40,1"
      Dst: "[org.locationtech.jts.noding.MCIndexSegmentSetMutualIntersector].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    functionSourceFile: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder"
    linkageType: null
    functionLinenumber: 61
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:62,1"
      Dst: "[org.locationtech.jts.noding.SegmentIntersectionDetector].<init>()"
    - Src: "org.locationtech.jts.noding.FastSegmentSetIntersectionFinder:63,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection,org.locationtech.jts.noding.SegmentIntersectionDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygon].getRepresentativePoints()"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygon"
    linkageType: null
    functionLinenumber: 37
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getRepresentativePoints()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygon:38,1"
      Dst: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getRepresentativePoints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.BasicPreparedGeometry].getRepresentativePoints()"
    functionSourceFile: "org.locationtech.jts.geom.prep.BasicPreparedGeometry"
    linkageType: null
    functionLinenumber: 59
    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: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.prep.PreparedPolygon"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:51,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].<init>(org.locationtech.jts.geom.prep.PreparedPolygon)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geom.prep.PreparedPolygonIntersects].intersects(org.locationtech.jts.geom.Geometry)"
    functionSourceFile: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Geometry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTestComponentInTarget(org.locationtech.jts.geom.Geometry)"
    - "[org.locationtech.jts.geom.GeometryCollection].getDimension()"
    - "[org.locationtech.jts.geom.MultiLineString].getDimension()"
    - "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - "[org.jdom2.ContentList$FilterList].size()"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getIntersectionFinder()"
    - "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - "[org.locationtech.jts.geom.LineString:org.locationtech.jts.geom.MultiLineString:org.locationtech.jts.geom.MultiPoint:org.locationtech.jts.geom.MultiPolygon:org.locationtech.jts.geom.Point:org.locationtech.jts.geom.Polygon].getDimension()"
    - "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTargetComponentInAreaTest(org.locationtech.jts.geom.Geometry,java.util.List)"
    - "[org.locationtech.jts.geom.prep.PreparedPolygon].getRepresentativePoints()"
    - "[org.locationtech.jts.geom.Geometry].getDimension()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 24
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:69"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:75"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:74"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:75"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:80"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:79"
        BranchSideFuncs:
        - "extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
        - "size()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:83"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:95"
        BranchSideFuncs:
        - "getIntersectionFinder()"
        - "intersects(java.util.Collection)"
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:94"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:86"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:95"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:94"
        BranchSideFuncs:
        - "getDimension()"
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:95"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:102"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:99"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:103"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:68,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTestComponentInTarget(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:75,1"
      Dst: "[org.locationtech.jts.geom.Geometry].getDimension()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:80,1"
      Dst: "[org.locationtech.jts.noding.SegmentStringUtil].extractSegmentStrings(org.locationtech.jts.geom.Geometry)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:83,1"
      Dst: "[java.util.List].size()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:84,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getIntersectionFinder()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:84,1"
      Dst: "[org.locationtech.jts.noding.FastSegmentSetIntersectionFinder].intersects(java.util.Collection)"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:98,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygon].getRepresentativePoints()"
    - Src: "org.locationtech.jts.geom.prep.PreparedPolygonIntersects:97,1"
      Dst: "[org.locationtech.jts.geom.prep.PreparedPolygonPredicate].isAnyTargetComponentInAreaTest(org.locationtech.jts.geom.Geometry,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 3
    BBCount: 11
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].setOwner(java.awt.Frame)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.Frame"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].<init>()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog$1].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - "[javax.swing.JLabel].<init>()"
    - "[java.awt.GridBagLayout].<init>()"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog].jbInit()"
    - "[java.awt.Window].pack()"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:76,1"
      Dst: "[javax.swing.JDialog].<init>(java.awt.Frame,java.lang.String,boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:56,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:56,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:56,1"
      Dst: "[javax.swing.ImageIcon].<init>(java.net.URL)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:59,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog$1].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:59,1"
      Dst: "[javax.swing.Timer].<init>(int,java.awt.event.ActionListener)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:69,1"
      Dst: "[javax.swing.JLabel].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:70,1"
      Dst: "[java.awt.GridBagLayout].<init>()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:78,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog].jbInit()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:79,1"
      Dst: "[java.awt.Window].pack()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:81,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].jbInit()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[java.awt.Dimension].<init>(int,int)"
    - "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - "[java.awt.Dialog].setResizable(boolean)"
    - "[java.awt.Dialog].setModal(boolean)"
    - "[javax.swing.JDialog].getContentPane()"
    - "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog$2].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[java.awt.Window].addWindowListener(java.awt.event.WindowListener)"
    - "[javax.swing.JDialog].setDefaultCloseOperation(int)"
    - "[java.awt.Insets].<init>(int,int,int,int)"
    - "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:86,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:87,1"
      Dst: "[java.awt.Dimension].<init>(int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:87,1"
      Dst: "[javax.swing.JComponent].setMaximumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:88,1"
      Dst: "[javax.swing.JComponent].setMinimumSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:89,1"
      Dst: "[javax.swing.JComponent].setPreferredSize(java.awt.Dimension)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:90,1"
      Dst: "[javax.swing.JLabel].setHorizontalAlignment(int)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:91,1"
      Dst: "[javax.swing.JLabel].setIcon(javax.swing.Icon)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:92,1"
      Dst: "[java.awt.Dialog].setResizable(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:93,1"
      Dst: "[java.awt.Dialog].setModal(boolean)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:94,1"
      Dst: "[javax.swing.JDialog].getContentPane()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:94,1"
      Dst: "[java.awt.Container].setLayout(java.awt.LayoutManager)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:95,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog$2].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:95,1"
      Dst: "[java.awt.Window].addWindowListener(java.awt.event.WindowListener)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:101,1"
      Dst: "[javax.swing.JDialog].setDefaultCloseOperation(int)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:102,1"
      Dst: "[java.awt.Insets].<init>(int,int,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:102,1"
      Dst: "[java.awt.GridBagConstraints].<init>(int,int,int,int,double,double,int,int,java.awt.Insets,int,int)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:102,1"
      Dst: "[java.awt.Container].add(java.awt.Component,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog$2].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog$2"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.awt.event.WindowAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog$2:95,1"
      Dst: "[java.awt.event.WindowAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].execute(java.lang.String,org.locationtech.jtstest.testbuilder.BusyDialog$Executable)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "org.locationtech.jtstest.testbuilder.BusyDialog$Executable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jtstest.testrunner.GuiUtil].centerOnScreen(java.awt.Component)"
    - "[org.locationtech.jtstest.testrunner.GuiUtil].center(java.awt.Component,java.awt.Component)"
    - "[java.awt.Dialog].setVisible(boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jtstest.testbuilder.BusyDialog:126"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.BusyDialog:129"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.BusyDialog:128"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jtstest.testbuilder.BusyDialog:131"
      Branch Sides:
      - BranchSide: "org.locationtech.jtstest.testbuilder.BusyDialog:133"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jtstest.testbuilder.BusyDialog:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:127,1"
      Dst: "[org.locationtech.jtstest.testrunner.GuiUtil].centerOnScreen(java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:129,1"
      Dst: "[org.locationtech.jtstest.testrunner.GuiUtil].center(java.awt.Component,java.awt.Component)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:130,1"
      Dst: "[java.awt.Dialog].setVisible(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 6
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].this_windowOpened(java.awt.event.WindowEvent)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.awt.event.WindowEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.swing.JLabel].setText(java.lang.String)"
    - "[org.locationtech.jtstest.testbuilder.BusyDialog$3].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    - "[java.lang.Thread].start()"
    - "[javax.swing.Timer].start()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:136,1"
      Dst: "[javax.swing.JLabel].setText(java.lang.String)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:137,1"
      Dst: "[org.locationtech.jtstest.testbuilder.BusyDialog$3].<init>(org.locationtech.jtstest.testbuilder.BusyDialog)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:148,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:149,1"
      Dst: "[java.lang.Thread].start()"
    - Src: "org.locationtech.jtstest.testbuilder.BusyDialog:150,1"
      Dst: "[javax.swing.Timer].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].setDescription(java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].getStackTrace()"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$000(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$100(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Thread"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$200(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "javax.swing.Timer"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$300(org.locationtech.jtstest.testbuilder.BusyDialog)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "org.locationtech.jtstest.testbuilder.BusyDialog$Executable"
    argCount: 1
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$402(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.Exception)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.Exception"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    - "java.lang.Exception"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jtstest.testbuilder.BusyDialog].access$502(org.locationtech.jtstest.testbuilder.BusyDialog,java.lang.String)"
    functionSourceFile: "org.locationtech.jtstest.testbuilder.BusyDialog"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "org.locationtech.jtstest.testbuilder.BusyDialog"
    - "java.lang.String"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].<init>()"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundleStar"
    linkageType: null
    functionLinenumber: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:33,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundleStar"
    linkageType: null
    functionLinenumber: 44
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.EdgeEndBundle].<init>(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].insertEdgeEnd(org.locationtech.jts.geomgraph.EdgeEnd,java.lang.Object)"
    - "[org.locationtech.jts.operation.relate.EdgeEndBundle].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:46"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:51"
        BranchSideFuncs:
        - "<init>(org.locationtech.jts.geomgraph.EdgeEnd)"
        - "insertEdgeEnd(org.locationtech.jts.geomgraph.EdgeEnd,java.lang.Object)"
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:50"
        BranchSideFuncs:
        - "insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:45,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:47,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBundle].<init>(org.locationtech.jts.geomgraph.EdgeEnd)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:48,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].insertEdgeEnd(org.locationtech.jts.geomgraph.EdgeEnd,java.lang.Object)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:51,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBundle].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundle].<init>(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundle"
    linkageType: null
    functionLinenumber: 53
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.operation.relate.EdgeEndBundle].<init>(org.locationtech.jts.algorithm.BoundaryNodeRule,org.locationtech.jts.geomgraph.EdgeEnd)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:54,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBundle].<init>(org.locationtech.jts.algorithm.BoundaryNodeRule,org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundle].<init>(org.locationtech.jts.algorithm.BoundaryNodeRule,org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundle"
    linkageType: null
    functionLinenumber: 41
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.algorithm.BoundaryNodeRule"
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getDirectedCoordinate()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    - "[org.locationtech.jts.geomgraph.EdgeEnd:org.locationtech.jts.operation.relate.EdgeEndBundle].getLabel()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBundle].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:42,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:42,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:42,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getDirectedCoordinate()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:42,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:42,1"
      Dst: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:42,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:38,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:43,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBundle].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getEdge()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 65
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Edge"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 67
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getDirectedCoordinate()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 68
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].getLabel()"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 66
    functionDepth: 0
    returnType: "org.locationtech.jts.geomgraph.Label"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.Label].<init>(org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.Label"
    linkageType: null
    functionLinenumber: 112
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    - "[java.lang.Object].<init>()"
    functionUses: 8
    ICount: 18
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.Label:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "org.locationtech.jts.geomgraph.Label:114,1"
      Dst: "[org.locationtech.jts.geomgraph.TopologyLocation].<init>(org.locationtech.jts.geomgraph.TopologyLocation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geomgraph.Label)"
    functionSourceFile: "org.locationtech.jts.geomgraph.EdgeEnd"
    linkageType: null
    functionLinenumber: 50
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "org.locationtech.jts.geomgraph.Edge"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geomgraph.Label"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:51,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].<init>(org.locationtech.jts.geomgraph.Edge)"
    - Src: "org.locationtech.jts.geomgraph.EdgeEnd:52,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEnd].init(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundle].insert(org.locationtech.jts.geomgraph.EdgeEnd)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundle"
    linkageType: null
    functionLinenumber: 64
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geomgraph.EdgeEnd"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.AttributeList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundle:65,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.operation.relate.EdgeEndBundleStar].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    functionSourceFile: "org.locationtech.jts.operation.relate.EdgeEndBundleStar"
    linkageType: null
    functionLinenumber: 59
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.IntersectionMatrix"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].hasNext()"
    - "[org.jdom2.FilterIterator].hasNext()"
    - "[org.jdom2.AttributeList$ALIterator].hasNext()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].hasNext()"
    - "[org.jdom2.ContentList$CLIterator].hasNext()"
    - "[org.jdom2.ContentList$CLListIterator].hasNext()"
    - "[org.jdom2.ContentList$FilterListIterator].hasNext()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].hasNext()"
    - "[org.jdom2.DescendantIterator:org.jdom2.output.support.AbstractFormattedWalker$1:org.jdom2.output.support.WalkerPRESERVE$1:org.jdom2.util.NamespaceStack$BackwardWalker:org.jdom2.util.NamespaceStack$EmptyIterable:org.jdom2.util.NamespaceStack$ForwardWalker:org.locationtech.jts.noding.NodeVertexIterator:org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].hasNext()"
    - "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - "[org.jdom2.ContentList$FilterListIterator].next()"
    - "[org.jdom2.util.NamespaceStack$ForwardWalker].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$NSIterator].next()"
    - "[org.jdom2.util.NamespaceStack$BackwardWalker].next()"
    - "[org.jdom2.ContentList$CLListIterator].next()"
    - "[org.jdom2.DescendantIterator].next()"
    - "[org.jdom2.util.NamespaceStack$EmptyIterable].next()"
    - "[org.locationtech.jts.noding.snapround.HotPixelIndex$CoordinateShuffler].next()"
    - "[org.jdom2.output.support.WalkerPRESERVE$1].next()"
    - "[org.jdom2.ContentList$CLIterator].next()"
    - "[org.locationtech.jts.noding.NodeVertexIterator].next()"
    - "[org.jdom2.output.support.AbstractStAXEventProcessor$AttIterator].next()"
    - "[org.jdom2.FilterIterator].next()"
    - "[org.jdom2.AttributeList$ALIterator].next()"
    - "[org.locationtech.jts.geom.GeometryCollectionIterator].next()"
    - "[org.jdom2.output.support.AbstractFormattedWalker$1].next()"
    - "[org.locationtech.jts.operation.relate.EdgeEndBundle].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:60"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:64"
        BranchSideFuncs:
        - "next()"
        - "updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
      - BranchSide: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:60,1"
      Dst: "[org.locationtech.jts.geomgraph.EdgeEndStar].iterator()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:60,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:61,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "org.locationtech.jts.operation.relate.EdgeEndBundleStar:62,1"
      Dst: "[org.locationtech.jts.operation.relate.EdgeEndBundle].updateIM(org.locationtech.jts.geom.IntersectionMatrix)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 2
    BBCount: 4
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].<init>(org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:460,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].polarCompare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:467,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].polarCompare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].polarCompare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:493"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:494"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:504"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:506"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:505"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:506"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:513"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:514"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:515"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:514"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:516"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:492,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.Orientation"
    linkageType: null
    functionLinenumber: 98
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.Orientation:99,1"
      Dst: "[org.locationtech.jts.algorithm.CGAlgorithmsDD].orientationIndex(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].polarCompare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:493"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:null"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:494"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:504"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:505"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:506"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:505"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:506"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:513"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:514"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:515"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:514"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:515"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:516"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:492,1"
      Dst: "[org.locationtech.jts.algorithm.Orientation].index(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 13
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:447,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].compare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator"
    linkageType: null
    functionLinenumber: -1
    functionDepth: 7
    returnType: "int"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].polarCompare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.algorithm.ConvexHull$RadialComparator:467,1"
      Dst: "[org.locationtech.jts.algorithm.ConvexHull$RadialComparator].polarCompare(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].<init>(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.SegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction"
    linkageType: null
    functionLinenumber: 97
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.snapround.HotPixel"
    - "org.locationtech.jts.noding.SegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:98,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChainSelectAction].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].isNodeAdded()"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction"
    linkageType: null
    functionLinenumber: 109
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].select(org.locationtech.jts.index.chain.MonotoneChain,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction"
    linkageType: null
    functionLinenumber: 120
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.index.chain.MonotoneChain"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    - "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].addSnappedNode(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:135"
        BranchSideFuncs:
        - "addSnappedNode(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.NodedSegmentString,int)"
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:129"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:136"
        BranchSideFuncs: []
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:135"
        BranchSideFuncs:
        - "addSnappedNode(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.NodedSegmentString,int)"
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:132"
        BranchSideFuncs: []
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:130"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:135"
        BranchSideFuncs:
        - "addSnappedNode(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.NodedSegmentString,int)"
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:121,1"
      Dst: "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:136,1"
      Dst: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].addSnappedNode(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.NodedSegmentString,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 4
    BBCount: 6
  - functionName: "[org.locationtech.jts.index.chain.MonotoneChain].getContext()"
    functionSourceFile: "org.locationtech.jts.index.chain.MonotoneChain"
    linkageType: null
    functionLinenumber: 127
    functionDepth: 0
    returnType: "java.lang.Object"
    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
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction].addSnappedNode(org.locationtech.jts.noding.snapround.HotPixel,org.locationtech.jts.noding.NodedSegmentString,int)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction"
    linkageType: null
    functionLinenumber: 151
    functionDepth: 7
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "org.locationtech.jts.noding.snapround.HotPixel"
    - "org.locationtech.jts.noding.NodedSegmentString"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    - "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:155"
      Branch Sides:
      - BranchSide: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:152,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:155,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:158,1"
      Dst: "[org.locationtech.jts.noding.snapround.HotPixel].getCoordinate()"
    - Src: "org.locationtech.jts.noding.snapround.MCIndexPointSnapper$HotPixelSnapAction:158,1"
      Dst: "[org.locationtech.jts.noding.NodedSegmentString].addIntersection(org.locationtech.jts.geom.Coordinate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 3
  - functionName: "[org.locationtech.jts.noding.NodedSegmentString].getCoordinate(int)"
    functionSourceFile: "org.locationtech.jts.noding.NodedSegmentString"
    linkageType: null
    functionLinenumber: 111
    functionDepth: 0
    returnType: "org.locationtech.jts.geom.Coordinate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 68
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      javaLibraryMethod: false
      classEnum: false
      classConcrete: true
    CyclomaticComplexity: 1
    BBCount: 1
  - functionName: "[org.locationtech.jts.noding.snapround.HotPixel].intersects(org.locationtech.jts.geom.Coordinate,org.locationtech.jts.geom.Coordinate)"
    functionSourceFile: "org.locationtech.jts.noding.snapround.HotPixel"
    linkageType: null
    functionLinenumber: 176
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "org.locationtech.jts.geom.Coordinate"
    - "org.locationtech.jts.geom.Coordinate"
    constantsTouched: []
    arg